На главную страницу AlgoNet В сотрудничестве с ZDNet
АРХИВ СТАТЕЙ 2002-8-11 на главную / новости от 2002-8-11
AlgoNet.ru
поиск

 

Место для Вашей рекламы!

 

Все новости от 11 августа 2002 г.

«Дефект» Windows API вызвал дебаты о надежности защиты

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

В четверг независимый консультант по защите данных Крис Паджет (Chris Paget) опубликовал документ, демонстрирующий то, что он называет «подрывными атаками» (Shatter Attack) – когда пользователь может повысить свои привилегии в системе и получить полный контроль над ней. Это достигается благодаря пробелу в защите, который, как утверждает Паджет, может присутствовать во многих Windows-приложениях, так как вызван конструктивной особенностью интерфейса прикладных программ Win32.

В последнее время надежность защиты Windows API широко обсуждается в связи с антимонопольным процессом против Microsoft. По условиям мирового соглашения Microsoft должна обнародовать скрытые ранее детали конструкции API – и этот процесс уже начался. Однако компания оставила за собой право не раскрывать те API, которые важны для безопасности Windows, что дало повод критикам говорить о стратегии «защиты типа „шито-крыто”».

Паджет уверяет, что его исследование доказывает эффективность обратной стратегии: чем меньше сокрыто, тем лучше защита. «Если об этих проблемах станет известно, их можно будет решить, – говорит он. – В противном случае уязвимость неизбежна. Это возвращает нас к вопросу о том, полезна ли полная гласность».

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

Риски безопасности, связанные с механизмом обмена сообщениями, известны давно, но Паджет претендует на то, что это первая демонстрация практической реализации подобных атак. В его примере атакующий применяет антивирусную программу Network Associates VirusScan v4.5.1, установленную в системе Windows 2000 Professional. Так как этому приложению требуются высокие привилегии доступа, оно работает в так называемом защищенном режиме — LocalSystem. Атакующий, зарегистрированный в системе как гость, может заставить программу с более высокими привилегиями LocalSystem выполнить небольшой фрагмент кода, который передаст эти привилегии пользователю.

Чтобы повысить привилегии пользователя, нужна программа, сама обладающая такими привилегиями, такая как антивирус или персональный брандмауэр. Эта программа должна открывать окно, которое использует эти высокие привилегии и непосредственно взаимодействует с пользователем, реализуя режим interactive service. Паджет утверждает, что количество таких уязвимых приложений невозможно определить без индивидуального исследования каждого из них: «Фактически любая программа, выполняющая нечто, что требует высоких привилегий в системе, может работать и в режиме interactive service».

Однако круг приложений, которые можно использовать для атак, основанных на механизме сообщений, не обязательно ограничивается программами, реализующими режим interactive service. Если, например, персональный брандмауэр разрешает доступ к корпоративной сети только через Internet Explorer, атакующий может обойти его, заставив IE предоставить ему доступ на уровне командной строки. «На самом деле любое приложение, которое работает на Windows, можно обмануть тем или иным способом, – говорит Паджет. – Атаки с повышением привилегий – это только один из примеров».

Microsoft: никакой уязвимости
Microsoft в своем заявлении, присланном в ZDNet UK в ответ на публикацию, уверяет, что эти примеры атак с использованием механизма messaging «не попадают под определение уязвимости защиты, принятое в Microsoft».

«Предложенный сценарий атак подразумевает, что атакующий уже пересек границу системы защиты или получил доступ к программе, использующей интерактивные сервисы в режиме LocalSystem», – говорится в заявлении. Microsoft утверждает, что данная ситуация не опасна, так как атакующий, чтобы воспользоваться этим методом, должен иметь «неограниченный физический доступ к компьютеру».

Паджет предупреждает, что умалять значение его эксплойтов неразумно. Для их реализации достаточно иметь всего лишь типичный для любой корпоративный сети доступ к системе. К тому же атаку можно реализовать и дистанционно через клиент с доступом к Terminal Services, каким пользуются сотрудники компаний для удаленной работы или операторы call-центров для связи с центральной системой. «Таким способом можно получить полный контроль над сервером терминалов», – говорит Паджет.

Документ вызвал дискуссию и в списке рассылки для секьюрити-профессилоналов Bugtraq; одни утверждают, что ответственность за такие пробелы в защите лежит на разработчиках приложений, а другие согласны с Паджетом, что Microsoft создала API, способствующий появлению уязвимого ПО. По мнению одного из обсуждающих, на ком бы ни лежала вина, эксплойты, использующие Windows messages, могут стать реальной проблемой. «С этими уязвимостями можно бороться, как, скажем, и с уязвимостями переполнения буфера, которые, тем не менее, всплывают то тут, то там», – пишет он. 

 Предыдущие публикации:
2002-07-26   Microsoft топчет кишащих клопов
2002-08-07   Microsoft детализирует план антимонопольных мероприятий
2002-08-07   Ошибка затрагивает Windows, Mac и Linux
 В продолжение темы:
2002-08-29   Microsoft открыла очередную порцию кода
2002-09-06   Через дыру в Windows можно красть кредитные карты
2002-09-13   Microsoft предупреждает о возможности хищения документов Word
2002-09-23   Sun одарила проект open-source
2003-07-14   Эксперт: уязвимость Windows сохраняется
Обсуждение и комментарии
DemonZla
12 Aug 2002 11:49 AM
Хехе... ага... значит я могу из, скажем, ворда управлять например какимнибудь фарволом... хм... заманчиво... ведь макровирусы то никто ещё не отменял... а ежели енту ошибку использовать... дааа... какие возможности! хехехе... да... а ещё можно заставить експлорер закачать и выполнить какую-нибудь каку... дааа... весёлые деньки ждут пользователей Windows... хехехе....
 

Qrot
12 Aug 2002 12:11 PM
2DemonZla: успехов тебе в управлении ;-) хехе :)
 

walt
12 Aug 2002 12:45 PM
2 DemonZla: Да, Вы верно понимаете всю мощь интегрированных решений Microsoft. Но корпорация не останавливается на этом. Бурно развиваются веб-сервисы, все шире распространяется Паспорт.
Если раньше максимум, что могла сделать кака - украсть пароли к провайдеру, отформатить винч и зачистить биос, то скоро можно будет и подставлять с эл. подписью, и на деньги опускать.
И заниматься этим будут не 16 летние филиппинские подростки, а вполне взрослые и серьезные дяди.
 

glassy
12 Aug 2002 12:57 PM
sendkey в VBA, что-ли? так я это еще на 2-м курсе под свои нужды использовал... потом забыл... надоело... Стабильная система ведь, там, где не надо -- это как с "\t\b\b\b\b" -- ну работает железно, аж неинтересно...

:)
 

Skull - sibskullmail.ru
12 Aug 2002 1:24 PM
2walt: ага, так активно, что вообще удивительно, почему мы еще не все сидим под паспортом, веб-сервисами и ваяем исключительно под .NET. Ну нету этого развития (и слава Богу!). Не хватало нам на отморозков из Редмонда равняться? Вы сами-то веб-сервисы используете? :)))
 

BGa
12 Aug 2002 2:18 PM
Aga, shas...
http://online.securityfocus.com/archive/1/286258
 

me - userinternet.com
12 Aug 2002 3:11 PM
Это не баг. Это фича:))
 

me - userinternet.com
12 Aug 2002 3:12 PM
Скулл, а ты какой-то злой вернулся. Может, еще отдохнешь?:)))
 

PTO - kruchkovkgb.ru
12 Aug 2002 4:28 PM
2 Skull: мне вот более всего данная сентенция с ЛОРа понравилась, автор анонимен к сожалению, но аналогия полная "Обнаружен новый класс аттак в линуксе - достаточно использовать функцию strcpy и не приверять длинну буфера. Теперь если разрешить пользователю иметь доступ к этой программе с помощью sudo, то пользователь может получить root'a. К сожалению Линус Торвальдс и другие активисты движения Линукс отказались коментировать эту проблему, потому как исправить её не возможно. "
 

Skull - sibskullmail.ru
13 Aug 2002 4:40 AM
2me: ну нифига! Я отдохнул хорошо. Просто противоборствующая линуксоидам сторона почему-то ассоциирует себя с аморфным коммунити любителей Windows и любой наезд на ОС, программу или программиста этого комуннити воспринимают на личный наезд. Странно все это. На фоне всего этого фанатизм линуксоидов выглядет просто верхом благожелательности и стремлении к продуктивному сотрудничеству :)))

2PTO: бредятина! Класс атак, позволяющих получить rootshell в Unix вообще и Linux в частности намного внимательнее изучен и соответственно разработчики знают о такой проблеме. Увы, Windows в отношении многопользовательности намного отстала и познает эту проблему только сейчас. Ей-ей! Как дети, чес слово!
 

tstone - saldomail.ru
13 Aug 2002 7:38 AM
> "что эти примеры атак с использованием механизма messaging «не
> попадают под определение уязвимости защиты, принятое в
> Microsoft»"

Опеределение уязвимости защиты, принятое в Microsoft!
Приехали.
Жаль что хакеры ничего не знают об этом "определении".
Мата уже не хватает на этих гениальных торгашей.
 

PTO - kruchkovkgb.ru
13 Aug 2002 1:04 PM
2 Skull: не, ты просто вдумайся в этот тип аттак и если есть понимание того, как работает софт вообще, все вопросы будут сняты. Аналогия практически полная... к примеру у тебя есть демон с рутовыми полномочиями, но в нем нет места проверкам на переполнение буффера... ты дергаешь демона юзером, переполняешь буффер и имеешь свой код выполняемый под рутом и далее делаешь все что хочешь с этой машиной. Аналогия с "дефектом" ПОЛНАЯ... т.е. некое багливое рутовое приложение, да еще работающее интерактивно (т.е. рисующее окошко) получает виндовое сообщение и почему-то должно рухнуть отдаться пользователю, что дернул это приложение. т.е. бага должна быть везде, на всем этапе работы этого приложения... чем это отличается от "класса аттак рутшелла"?
 

DemonZla
13 Aug 2002 1:57 PM
PTO, маленькая поправка, в случае такой ошибки в Linux, её можно легко и быстро найти и исправить, благо исходнички под рукой, а вот в Windows, ждите пока Microsoft изволит сначала признать что ошибка есть, затем исправлять её с месяц... вот такие пироги... мда...
 

Yegor
13 Aug 2002 2:01 PM
Первую версию этой статьи я прочитал еще на компуленте. Полный бред. Там хоть фотку автора "дефекта" привели. Дефект полный.
 

PTO - kruchkovkgb.ru
13 Aug 2002 2:07 PM
2 DemonZla: а если такая бага в коммерческом софте и исходников нет? (К примеру в Оракле?) чего делать будете?
 

DemonZla
13 Aug 2002 2:11 PM
Yegor, я тоже фотку видал :)))
Да автор действительно на гения не похож...
Вот прикол, если баг работает и его смог найти даже такой "искатель" как на фотке... что уж тут скажешь....
Хотя скорее всего эта ошибка не смертельная, её трудно применить с толком, но уж если кто найдёт как это сделать. будут весёлые деньки у пользователей Windows и у Microsoft тоже :)))
 

Qrot
13 Aug 2002 2:12 PM
2DemonZla: доктор, а как вы вылечите ошибку с strcpy? :) и вообще, как там управление файрволами из ворда поживает :))
 

x61
13 Aug 2002 2:35 PM
2DemonZla: ну допустим, научишься ты использовать эту ошибку (что почти нереально), каким образом это заденет пользователей Windows?
 

Qrot
13 Aug 2002 2:39 PM
2DemonZla: почитай вот здесь, что ли, что умные люди говорят
http://online.securityfocus.com/archive/1/286888/2002-08-09 /2002-08-15/1
там есть ссылочка, где и кем впервые был описан этот, простите, "баг".
а малчык, что ор поднял на всю сеть, просто не тот гамбургер съел на завтрак
 

subZero
13 Aug 2002 10:08 PM
использовать очень просто: запускаешь свою программу и пытаешься открыть например базу паролей - ядро авторизации получает запрос говорит "нет" - но рядом запущенная программа давит это робкое "нет" миллиардом "ДА"
PS
только полный тормоз(или умник на зарплате) не поймет проблеммы - славабогу у меня под Win очень мало написано - а там где это опасно я за месяц под Unix перенесу - благо заказчик разумный - отлачивает по горящему прайсу
 

x61
14 Aug 2002 10:41 AM
2subZero: судя по тому, что ты пишешь, ты совершенно не понял проблемы. Остается надеяться, что ты - умник на зарплате.
 

СтранниК
14 Aug 2002 10:55 AM
2PTO
Надеюсть вы про запуск приложений с использование сhroot слышали?
http://www.tcu-inc.com/Articles/23/chroot.html
Рекомендую прочесть. В этом случае права root получить довольно таки не просто.
Касателльно:
"2 DemonZla: а если такая бага в коммерческом софте и исходников нет? (К примеру в Оракле?) чего делать будете? "
Надо быть последним идиотом чтобы сделать общедоступным доступ к службам того же Oracle. Ваш пример кстати хорошо демонстрирует что особенно крупные коммерческие компании очень вяло реагируют на появление проблем с безопастностью. И Oracle и MS не исключение. Пример: недавно была проблема с безопастностью в апаче. У Oracle есть такой продукт как IAS ( это версия apache c прикрученными фитчами). Так патчи к апачу который в дистрибутиве например RedHat вышли уже давно,а для IAS вот-вот только ожидается, c опозданием на пару месяцев.

 

glassy
14 Aug 2002 11:17 AM
может быть это я что-то не так понял?
имхо схема действия вредоносной программы:
- дождаться трехчасового бездействия системы
- скопировать и поместить на передний план картинку рабочего стола
- запустить некоторую программу, н-р из Administrative Tools
- посылать сообщения, иммитируя работу пользователя
- а здесь на ваш выбор
 

Qrot
14 Aug 2002 11:36 AM
2СтранниК: ИМХО, не все так просто с выпусками патчей.. у коммерческих контор несколько другой подход к релизу, будь то полноценный продукт или патч - всё должно проходить обязательное тестирование и QA, причем не только патченная часть, а весь продукт целиком. отсюда возожные задержки. впрочем, я нисколько не оправдываю эти же конторы, когда они просто игнорируют проблему и начинают шевелится уже после обнародования эксплойта.

2glassy: это ты так шутишь, что ли? или просто нихрена не понимаешь, о чем пишешь?
 

Skull - sibskullmail.ru
14 Aug 2002 11:37 AM
2PTO: а как быть с окном другого пользователя в режиме терминала? Сообщение в виндовом терминальном решении передается в рамках всех терминалов? Или как в сессиях XP - там сообщения между сессиями могут слаться и какие ограничения по безопасности на этот процесс накладываются?
Поскольку на однотерминальном компе сообщения сам себе посылаешь, толку от использования этой баги - 0!
 

PTO - kruchkovkgb.ru
14 Aug 2002 1:05 PM
2 Skull: если кратко, то в режиме терминала этот "дефект" работать не будет вообще.
 

Tolik
14 Aug 2002 1:08 PM
2 glassy

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

Hint: Факт наличия ярлыка в Administrative Tools тоже не гарантирует запуска с правами, отличными от прав пользователя

Hint2: 3-часовой простой тоже не приводит к повышению прав процесса
 

glassy
14 Aug 2002 1:25 PM
2Qrot: как тебе в соседнем треде? Мой тоже синий экран показал. Извини, но линукс у меня такого никогда не показывал.

Я хочу сказать, что у них сама архитектура имеет равномерную дырявость по всем уровням
 

Qrot
14 Aug 2002 2:27 PM
2glassy: ты лучше вообще ничего не говори, а то смешно до колик уже... а "в сосебнем треде" читай в соседнем треде. архитектор тоже выискался :)
 

glassy
14 Aug 2002 3:12 PM
2Tolik: а гуйный файрвол я смогу отключить?
 

me - userinternet.com
14 Aug 2002 7:58 PM
>> в случае такой ошибки в Linux, её можно легко и быстро найти и исправить, благо исходнички под рукой, а вот в Windows, ждите пока Microsoft изволит сначала признать что ошибка есть

Ошибка есть - в Network Associates VirusScan v4.5.1. МС тут совсем не причем.

>> как в сессиях XP - там сообщения между сессиями могут слаться и какие ограничения по безопасности на этот процесс накладываются?

Ограничения такие: разные десктопы (они же "сессии ХР", они же window stations) имеют разные очереди сообщений. Послать сообщение из одного десктопа в другой с помощью SendMessage(...) невозможно. Написано в MSDN большими буквами.

PS: Распечатаю это обсуждение и заставлю всех коллег прочитать, чтобы никогда подобную херню не говорили.

PPS: А имеет ли отношение этот паренек, нашедший "дефект", к компании Network Associates? Мне вот кажется, что имеет...
 

RIK
14 Aug 2002 8:45 PM
Ну, проблема все-же есть, хотя не совсем та, о которой говорится - а именно в обработке WM_TIMER. Надо бы делать проверку, что сообщение пришло от таймера и содержит корректный адрес обработчика. Впрочем, это действительно не имеет отношения к пробелам в security Windows. MS давно говорит о том, что интерактивные сервисы являются уязвимыми.
 

Qrot
15 Aug 2002 3:23 AM
2me: строго говоря, одна window station состоит из нескольких десктопов, так что вещи это разные. но сути это не меняет :)
 

имя не имеет значения и ник тоже - HETmail.ru
15 Aug 2002 4:48 AM
Невзламываемых нет и не будет! Человек не бог - он не может создать безошибочный код. Удачи всем админам на их нелегком пути.
PS. Ненавижу тех кто уничтожает информацию и портит компы!!!
 

Tolik
15 Aug 2002 7:04 AM
2 glassy

Сие будет работать, если:

Есть некий серис, которому включено Allow Interact with Desktop (потому как иначе он на разных десктопах с пользователем и сообщения туде не пойдут)

При этом этот сервис имеет ГУЙ, который просто в скрытом окне (ShowWindow(... SW_HIDE)) и этот ГУЙ умеет этим сервисом управлять.

Сочетание, согласись, глуповатое. Тут и сообщений не надо, достаточно программки из нескольких строк, которое покажет окно с ГУЕм.

Еще вариант - один сервис управляет другим, оба они не Allow Interact with Desktop, присем управляемый - имеет ГУЙ (который непонятно зачем ему нужен, ибо на десктопе не показывается).

Сочетание тоже странноватое.

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

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

glassy
15 Aug 2002 7:21 AM
2Tolik: я что-нибудь говорил про сервисы?
"глуповатое сочетание", "зачем ему нужен", "тоже странноватое" -- это как раз про вашу графическую надстроойку.

 

glassy
15 Aug 2002 7:23 AM
в пинципе, я не хочу тут разводить флейм, ты ведь сам в конце концов признал, что очередь сообщений -- как раз то самое, чего нет в остальных оконных системах, больное место.
 

Tolik
15 Aug 2002 7:58 AM
Я не признавал, что это больное место.

Если с каким-то механизмом ОС есть проблемы - это не значит, что это болезнь. Проблемы имеет любая система. То, что я "признал" - это действительно нехороший эффект, но, в реальности - никаких проблем он не создает. Файловая система тоже имеет проблемы, которыми могут воспользоваться враги - можно файлы удалять, ну и что ?

А то, что ты про сервисы не говорил - так значит ты вообще ничего не понял, ибо все обычные процессы запущены от имени текущего пользователя и атаковать их таким образом - бессмысленно, он и так в них имеет те же самые права. "Дефект" касается именно гипотетических сервисов с ГУЁм, скрытым от пользователя, но на том же десктопе.
 

Владимир Ковалев - bobmegafors.ru
15 Aug 2002 8:35 AM
2Tolik: ну чего ты распинаешься? 50% пишуших тут ВООБЩЕ не понимают о чем речь :)
 

eXOR - billgmicrosoft.com
15 Aug 2002 12:00 PM
2 PTO:
Ай - йай - йай... чего ж это вы обманываете - то, а? :-(....

2 Tolik:
Прочитай еще раз то в чем суть баги и то что написал glassy - в чем проблема - то? Кроме того механизм замечательно может применяться вирусами и червями (или их комбинациями)...

бага не серьезная была бы, если бы она не была зашита на уровне архитектуры... а так...
 

eXOR - billgmicrosoft.com
15 Aug 2002 12:01 PM
2 Tolik:
> серис
Кстати "серисы" тут совсем не при чем.
 

glassy
15 Aug 2002 12:08 PM
2Tolik: почему гипотетических? и права суперпользователя мне не всегда нужны...
Согласись, я могу отключить антивирус и файрвол (тот же нортоновский семейный), правильно? а для всего остального мне tcp/ip с головой хватит.
(меня можно обвинить в незнании либ VC и возможносей win*, но пользоваться сокетами я умею)
 

Tolik
15 Aug 2002 12:35 PM
:-)))

Блин, а для этого никаких сообщений и не надо, если он выполняется в сеансе пользователя и с его правами - можно просто процесс прибить. И в любой ОС то же самое. Опять сравниваем защиту с Win95 ? Так это не для того система и вопроса получения привилегий там просто не стоит.

Привилегии бывают в NT и там ты файрвол не обладая правами - не остановишь. Даже посредством сообщений.
 

Qrot
15 Aug 2002 12:36 PM
ну что, zdnet до 1-го сентября в отпуске.. а это похоже единственная тема, которая имеет шансы на развитие :)

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

2glassy: ну да, например, послав WM_QUIT приложению гуевой апликухе, ты его выгрузишь (по крайней мере попытаешься, она еще спросит чтонить типа "Вы увекрены?"). ну и что? давай, опиши в красках какие потресения меня ожидают от такой байды
 

x61
15 Aug 2002 12:41 PM
2Tolik: Использование IsBadWritePtr решает описанную тобой проблему.
 

Chkaloff
15 Aug 2002 12:42 PM
2 glassy:
Опять за рыбу деньги...
Вам человек объяснил в краце возможный механизм. А вы билеберду несете.

Может напару с eXOR'ом дадите определение сервиса? Тогда может сами поймете.
 

Tolik
15 Aug 2002 12:44 PM
:-)

Ага, только во многих ли приложениях оно есть ?
 

x61
15 Aug 2002 1:03 PM
2Tolik: так это уже проблемы приложений, а не архитектуры.
 

Tolik
15 Aug 2002 1:30 PM
Не совсем.

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

 

x61
15 Aug 2002 2:49 PM
2Tolik: если приложению нужно испортить свои данные, то для этого существует намного более простой путь, чем посылать куда-то сообщения. Ты ведь не думаешь, что сможешь таким образом испортить данные другого приложения? Так что даже IsBadWritePtr не надо, и так все хорошо будет.
 

Tolik
15 Aug 2002 2:56 PM
Именно думаю. Более того - проверял.

Если сообщение из другого процесса просит записать что-то в буфер (обычно строку, например текст итема из ListView), в параметре передается указатель на этот буфер и этот указатель показывает на данные в процессе твоего приложения (случайно или злонамеренно) - данные будут затерты и IsBadWritePtr не поможет, ибо указатель - валидный.

Другое дело, что воспользоваться этим для получения прав по вышеприведенным соображениям проблематично
 

DemonZla
15 Aug 2002 2:56 PM
Нифига понаписали :))
PTO, отвечаю...
Я просто не буду использовать дебильный коммерческий софт и пошёл бы он лесом...
 

x61
15 Aug 2002 3:10 PM
Tolik, может быть, ты поделишься способом получать под Win32 указатель на данные другого приложения? Или все-таки проверишь еще раз?
 

Chkaloff
15 Aug 2002 3:16 PM
2 DemonZla:
>PTO, отвечаю...
>Я просто не буду использовать дебильный коммерческий софт и
>пошёл бы он лесом...
Хороший ответ. Главное содержательный и высокоинтелектуальный :-)
 

Tolik
15 Aug 2002 3:20 PM
2 x61

Да не обязательно получать я же тебе просто говорю, что IsBadWritePtr ничего не гарантирует. в wParam может СЛУЧАЙНО оказаться валидный в обрабатывающем процессе адрес
 

Qrot
15 Aug 2002 3:30 PM
да можно и не случайно в принципе - через хуки. автор, судя по всему, до хуков еще MSDN недочитал :))
 

x61
15 Aug 2002 3:34 PM
2Tolik: в lParam. IsBadWritePtr использовать вообще не надо, это я сразу как-то не понял, о чем ты пишешь.
Указатель, к счастью, всегда будет валидным в обрабатывающем процессе, иначе зачем бы он был нужен?
Напиши тестовый пример, пошли сам себе WM_GETTEXT и сравни указатель, который ты передаешь в SendMessage с тем, который приходит в WndProc. Подумай над этим, и тебе откроется Истинный Путь ;)
Да, кстати, случайно ты указатель на данные другого процесса тоже не получишь.
 

x61
15 Aug 2002 3:37 PM
2Qrot: еще один. Через какой хук можно получишь указатель на данные другого процесса?
 

Qrot
15 Aug 2002 3:41 PM
2x61: открой на SetWindowsHookEx и почитай про глбальные хуки.
еще можно CreateRemoteThread заюзать, но уже права нужны соответствующие
 

Yegor
15 Aug 2002 3:50 PM
2 x61 ровно 10 минут назад сделал как раз то, что ты написал про WM_GETTEXT. Как мне не жаль, но все отлично работает! :)
 

Yegor
15 Aug 2002 3:53 PM
Единственное, что усложняет проблему, это то, что code программы Read-Only, а данные Non-Executable
 

Qrot
15 Aug 2002 3:54 PM
Yegor: в каком смысле?
 

Qrot
15 Aug 2002 3:56 PM
Yegor: в каком смысле все работает?
 

Yegor
15 Aug 2002 4:04 PM
SendMessage(Handle, WM_SETTEXT, 0, buf);
SendMessage(Handle, WM_GETTEXT, 1000, fakeaddr);
где:
buf - указатель на буфер с кодом
fakeaddr - адрес, куда помещаем наш код

 

x61
15 Aug 2002 4:10 PM
2Yegor: молодец! Теперь подумай, чем это отличается от memcpy.

2Qrot: повторю свой вопрос, какой именно хук дает возможность получить доступ к данным другого процесса?
 

Qrot
15 Aug 2002 4:13 PM
2x61: любой из глобальных.
 

Yegor
15 Aug 2002 4:14 PM
x61,
абсолютно ничем, только одной мелочью, все это происходит в другом процессе ;)
 

x61
15 Aug 2002 4:20 PM
2Yegor: ответ неверный.

2Qrot: ну хорошо, берем первый по списку: WH_CALLWNDPROC. Что именно в параметрах обработчика позволит получить доступ к данным?
 

Qrot
15 Aug 2002 4:30 PM
2x61: а параметры обработчика тут не причем. дллы с глбальными хуками мапятся в адресное пространство каждого запущенного процесса на своем десктопе. я же говорю - почитай, там все написано.
 

Yegor
15 Aug 2002 4:35 PM
2x61: ответ верный.
 

Qrot
15 Aug 2002 4:58 PM
> SendMessage(Handle, WM_SETTEXT, 0, buf);
> SendMessage(Handle, WM_GETTEXT, 1000, fakeaddr);

а что собсно ожидается то?
 

x61
15 Aug 2002 5:13 PM
2Yegor: вопрос попроще, в адресное пространство какого процесса указывает fakeaddr?

2Qrot: экий ты наивный. А права доступа для чего тогда? Не сможешь ты запуститься под Restricted Users и замапить свою DLL в адресное пространство сервиса, я проверял когда-то :)
 

Qrot
15 Aug 2002 5:26 PM
2x61: я не наивный, я просто много знаю :)) (шутка)
права доступа при установке хука не проверяются. потом, я же сказал - мапится во все процессы на своем десктопе. сервисы, как известно, относятся к другому десктопу. если сервис будет позволять interact with user desktop т.е. будет запущен на юзеровском десктопе - то и туда подмапится. "..и тебя вылечат..." :) (С) самизнаетекто
 

x61
15 Aug 2002 5:47 PM
2Qrot: проверяются права, только что еще раз проверил. А то бы и сообщений не надо было, получил доступ к памяти - и вперед.
 

Qrot
15 Aug 2002 6:16 PM
2x61:
1. как проверял?
2. где написано что права доолжны проверятся?
3. только что перепроверил сам - содал юзера в Guests, зашел под ним, пустил свою прогу, которая вешает хук на ожидание скринсейвера - все нормально, скринсейвер -> хук послал сообщение -> прога его получила
 

x61
15 Aug 2002 7:26 PM
2Qrot: программу написал, как же еще?

Запусти LvAgent из Lingvo - он ставит глобальный хук и ко всем процессам мапится LvHook.dll, что нетрудно видеть в любом отладчике. Теперь закрой LvAgent и запусти его через RunAs с урезанными правами. Никакого LvHook больше не будет. чтд.
 

me - userinternet.com
15 Aug 2002 8:11 PM
>> Запусти LvAgent из Lingvo

Извини, что вмешиваюсь, но мой лингво Ctrl+Ins+Ins отлично поймал, несмотря на то, что был пущен под Guest...
 

x61
15 Aug 2002 8:36 PM
2me и Qrot: http://www.sysinternals.com/ntw2k/freeware/listdlls.shtml - полезная программа. Посмотрите сами, если вы мне не верите :)
 

Qrot
15 Aug 2002 8:41 PM
2x61: да я понял, что не с бубном песни пел :) с чего ты решил что в дебагере будет показана эта dll?
я вот тоже программку простую написал - в дебагере не вижу ни lvhook.dll, ни своего хука (все запущено по моим аккаунтом), тем не менее Ctrl+Ins+Ins работает и скринсэйвер перехватывается успешно.. аналогично под другим юзером и под гостем.
 

Qrot
15 Aug 2002 8:55 PM
2x61: спасибо, у меня process explorer оттуда же :) кажет по lvhook что где-то она есть, где-то ее нет.. тоже странно вобщем то. ты бы хоть потрудился бы - проверил, работает ли хоткей от лингвы когда ты ее пускаешь под другим юзером.
 

x61
16 Aug 2002 4:04 AM
2Qrot: дался вам этот хоткей :) Для этого никуда мапится не надо. А разговор был именно о добавлении своего DLL в адресное пространство другого процесса. Запусти любую программу после Lvagent и проверь listdlls - lvhook будет, только если у Lvagent есть права.
Кстати, если в SetWindowsHookEx явно задать ThreadID другого процесса, то при запуске из-под guest, оно честно возвращает ERROR_ACCESS_DENIED.
 

Tolik
16 Aug 2002 6:39 AM
2 x61

Читайте классиков, они рулез. Ты неудачно выбрал сообщение для экспериментов. WM_GETTEXT особо обрабатывается системой. Открой Рихтера, четвертое издание, страница 664, там тебе все описано. У меня в электронном виде под рукой только на ихнем, переведи сам

Once the memory-mapped file has been created, the system can send the WM_GETTEXT message to fill it. Then the system switches back to the process that called SendMessage in the first place, copies the data from the shared memory-mapped file into the buffer pointed to by szBuf, and returns from the call to SendMessage

А теперь повтори все для LVM_GETITEMTEXT и посмотри на результаты.
 

eXOR - billgmicrosoft.com
16 Aug 2002 7:47 AM
2 Qrot:
> не позорься. сервисы при том, что выполняются под Local System
И что?
 

eXOR - billgmicrosoft.com
16 Aug 2002 7:51 AM
К этой конкретной теме сервисы отношенния не имеют никакого.
 

Tolik
16 Aug 2002 7:59 AM
Как это не имеют ?

А от кого тогда получать повышенные права ?
От пользовательской задачи их не добудешь.

Кстати, сегодня у Рихтера же (Программирование серверных приложений под Windows 2000) - наткнулся на совет не давать сервисам interact with Desktop по той же причине.

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

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

Qrot
16 Aug 2002 10:56 AM
2x61: :( действительно, права соблюдаются
 

x61
16 Aug 2002 12:05 PM
2Tolik: я понял, что ты имел в виду. Да, ты прав, сообщения типа LVM_GETITEMTEXT могут привести к AV в другом приложении, но похоже это максимум, чего можно добиться. Свой код таким образом выполнить с повышенными правами не получится.
 

glassy
16 Aug 2002 2:01 PM
скипаю все нижесказанное...
2x61: среднестатистический юниксоид тебе скажет, что segv это на 90% готовый эксплойт.

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

glassy
16 Aug 2002 2:03 PM
2Tolik: уговорил, представим гипотетически, у меня дома стоит win2k (98 atm). Norton Internet Security я никак не могу выгрузить (даже в 98). Но могу снять галочку -- верно?
 

Tolik
16 Aug 2002 2:18 PM
Галочку можешь. Если текущему пользователю достаточно прав для настройки файрвола.

Кстати - и в любом юниксе, думаю, то же самое - если пользователь имеет право рулить другой программой - то, думаю, найдется путь ею порулить от его имени программно. Не так ?

 

glassy
16 Aug 2002 3:32 PM
2Tolik: там флаг есть у сообщения -- домой прийду, посмотрю. Навскидку помню, что иксы отвергают программы, у которых uid другой (кроме рутовских, само собой).

Но вот например xmms, xine и aumix отлично управляются из командной строки. Насколько я помню -- winamp принимает сообщения для этого.

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

Ron - rodionlenta.ru
16 Aug 2002 7:02 PM
2 Tolik. > "А от кого тогда получать повышенные права ?
От пользовательской задачи их не добудешь."
Теоретически, их можно получить от сервиса, который может создавать невидимые окна в своих целях. Например, если сервис выставляет или использует ком-объекты, то он может имеет невидимое окно и очередь сообщений.
 

Chkaloff
16 Aug 2002 7:08 PM
2 Ron: А как быть в данном случае с налличием interact with Desktop?
 

eXOR - billgmicrosoft.com
17 Aug 2002 8:13 PM
2 Tolik:

Дыкть... вопрос не в том, что проблема стара, а в том что архитектура - то... хех неверная... (подлая)

> От пользовательской задачи их не добудешь.
Ор регедита, запущенного под админом? Или под повер узером... не суть важно...

2 Ron:
Не... ну и че ты сможешь сделать? Разве что прислать ему сообщенние, на которое он просто забьет? Ну или переполненние, но тут еще разобраться надо...
 

Tolik
19 Aug 2002 7:03 AM
Ну вот, опять двадцать пать ...
Вроде все обсудили, дырок в архиректуре как таковой не нашли, но, как водится - то ли у меня украли, то-ли я - всё одно - осадок остался.

Чем она тебе подлая, кроме размера состояния Билла ?
 

eXOR - billgmicrosoft.com
19 Aug 2002 9:04 AM
2 Tolik:
> Чем она тебе подлая, кроме размера состояния Билла ?
Этим - то она мне как раз очень даже нравится. И дядя Билли - грамотный бизнессмен... а подлая она мне наличием этой заподлянской очереди... а еще тем, что сильно уж много однотипных функций, для одного и того же...
 

me - userinternet.com
19 Aug 2002 9:47 AM
>> Ор регедита, запущенного под админом?

Ты еще скажи про cmd.exe с админскими правами. В юниксах рутовая консоль совсем-совсем ничего не дает?:)))
 

glassy
19 Aug 2002 9:52 AM
2Tolik: aга, просто очень плохая архитектура, а кое-где ее вообще нет. Просто архитектор такой -- на Бейсике вырос.
Вот скажи мне, какая архитектура у .Net My Services?

2eXOR: ага, не говори... причем для них в POSIX-коде даже место придумать сложно :)
 

Qrot
19 Aug 2002 10:31 AM
2glassy: а слабо интерпретатор своего языка для альтаира за месяц написать? не имея машинки как таковой, ессно.. и что бы работал сразу, на первом же показе..
 

glassy
19 Aug 2002 12:22 PM
2Qrot: 4-й курс, лаба по ТВП
 

eXOR - billgmicrosoft.com
19 Aug 2002 12:56 PM
2 glassy:
> причем для них в POSIX-коде даже место придумать сложно
bingo! ;-)

2 me:
Это не то же самое.
 

Qrot
19 Aug 2002 1:59 PM
2glassy: что "4-й курс, лаба по ТВП"? я тебе говорю про событие, которое совершило революцию в персоналках, а ты мне про какую-ту лабу сказки рассказываешь...
 

glassy
19 Aug 2002 2:47 PM
2Qrot: ТВП -- теория вычислительных процессов. Там, в том числе, и компиляторы учат писать.
 

x61
19 Aug 2002 3:45 PM
2glassy: а что плохого в архитектуре? "ты не выделывайся, ты пальцем покажи" (c) анекдот.
У вас все на 4 курсе в машинных кодах интерпретатор писали? Или ты один такой одаренный?

2eXOR: а что такого подлого в очереди?
 

Qrot
19 Aug 2002 3:51 PM
2glassy: и что? до тебя не доходит, что ли?
в 197.. году Гейтс и Аллен написали Бейсик для Альтаира (тогдашний ПК если можно так сказать), причем Гейтс написал собсно бейсик, а Аллен писал эмулятор Альтаира, на котором этот бейсик проверяли.. до сего события все юзеры альтаира мало того что сами эти альтаиры собирали, так еще и вынуждены были писать на асме.. при малейшей ошибке приходилось все перебивать заново.. из-за этого бейсика началась чуть ли не массовая истерия.. причем Гейтс солгал когда заявил конторе выпускающей Альтаир что у него есть бейски, т.к. первый раз бейсик проверили на альтаире только в этой конторе.. и именно этот бейсик кстати потом скоммуниздили студенты на одной из выставок - потому что без него было уже как без воздуха. а ты мне "4-й курс, лаба по ТВП"... даже не смешно..
 

DemonZla
19 Aug 2002 5:55 PM
Qrot, а потом Билли так развонялся... тут кстати и началась сказочка про авторские права на программы...
Просто в то время считалось нормальным проги раздавать друзьям, а Билли решил со всех денег поиметь.. ну и напоролся на первых "пиратов", как он потом выразился...
Но вонял он страшно, наверно до сих пор забыть не может, поэтому и открытые исходники ему поперёк горла...
Эх, его ещё тогда надо было отпи...ть, чтобы не выпендривался, да жаль хакеры добрые попались...
Вот'с теперь юзеры с админами и расплачиваются...
А пристукни хакеры вовремя Билли, смотришь и история по другому бы случилась...
 

quadic
19 Aug 2002 8:15 PM
2DemonZla: лучше бы твои добрые хакеры написали раньше Билли перл и раздали его друзьям. Смотришь и история по другому бы случилась... А то даже просто морду набить вовремя не сумели, только аж двадцать с лишним лет спустя один тортом заехал. Дульные тормоза-компенсаторы, а не хакеры.
 

Qrot
19 Aug 2002 8:31 PM
2quadic: в точку, как всегда :)
 

Anti-MS
20 Aug 2002 3:41 AM
2Qrot
Люди по Луне ходили когда Билли писал бейсик. Какая там революция. Этот бейсик и альтаир вообще смех.
 

x61
20 Aug 2002 4:25 AM
2Anti-MS: еще неизвестно, ходили они по Луне или в студии все сняли :) И причем тут это вообще? Qrot правильно говорит, этот Basic был очень важной вещью для развития всей отрасли персональных компьютеров.
 

Skull - sibskullmail.ru
20 Aug 2002 4:56 AM
2DemonZla: история не имеет сослагательного наклоненеия. И что вам сдался БГ. Как конкретно его существование вам жизнь портит? Мне вот после перехода на Linux совершенно пофигу на его положение и состояние. Даже уважать его больше стал за умение обувать лохов. :)))
 

Tolik
20 Aug 2002 7:23 AM
Вы зря смеетесь над Бейсиком для альтаира.
Посмотрите на него из того года. Да, сейчас это лаба для студентов. А еще сейчас один человек может за годик написать клиент-серверное приложение с гуйным интерфейсом и десятками рабочих мест на сотню пользователей. А еще пару десятков лет назад - это была задача для отдела в десятки человек на многие годы.

Известная вещь, что делать что-то первым - всегда тяжело, а вот гадить на того, кто что-то сделал - легко и ненапряжно. Задним умом - все мы крепкие.
Желающим продолжать гадить на очереди сообщений - советую вернуться годик так в 85-й, когда компьютеры были большими, а мощность их маленькой и все механихмы взаимодействия должны были этому соответствовать. А потом, по пути в 2000 - не забыть про своих пользователей и не рассыпать совместимость с программами, этими пользователями написанными. Хотя бы и 20 лет назад.
 

eXOR - billgmicrosoft.com
20 Aug 2002 8:13 AM
2 x61:
Ну не понимаю я для чего все сваливать в одну помойку, чтобы потом из этого выбирать что - то... почему бы например для каждого пользователя не завести по очереди? Ситуация такая же как с реестром... ну любят в M$ все сваливать в одну большую свалку, а потом делать хитрый инструментарий, для выискивания в ней нужного.

2 quadic:
100 пудов :-).

 

glassy
20 Aug 2002 8:30 AM
2Tolik: так об этом уже был разговор, PTO новые фишки NT все вспоминал... На что ему был краткий ответ -- "\t\t\b\b\b\b\b\b"
И кстати, я свой кад написал меньше, чем за год -- с нуля с апреля. И посмотри на внешний вид моих средств разработки.
 

glassy
20 Aug 2002 8:37 AM
2x61: при дамах будет сказано, устал я пальцем показывать.
На 4-м курсе писали компилятор: минимум арифметические операции, переменные и команда вывода результата на экран. Выходной код -- досовский ком-файл. Разумеется, написали не все, и я сам спорил с преподавателем по поводу нотаций -- я использовал $ с переменными, как sh.
А на 3-м курсе работали с УМК -- писали кодовый замок на неи.

Развитие всей отрасли персональных и других компьютеров, признай пожалуйста за факт, сейчас лежит на Линусе.
 

glassy
20 Aug 2002 8:42 AM
2Qrot: ты про перфоленты слышал? Так что нечего героев делать из тогдашних хакеров и программистов-неудачников. :)
 

Tolik
20 Aug 2002 11:15 AM
2 glassy

Не знаю твоего када. Много их видел - вот твоего - что-то нету. Странно ... У тебя, часом не мания величия ? Что-то мне подсказывает, что ты пытаешься встать в ряд с серьёзными продуктами, не осознавая разницы в размерах. Ну да Бог с ним, все одно - ты НЕ первый, ты просто повторяешь то, что до тебя уже десятки раз сделано и пользуясь наработками не тобой созданными (компиляторы, библиотеки, идеи ...). С этих позиций критиковать того, кто был ПЕРВЫМ - мелко.

>Развитие всей отрасли персональных и других компьютеров, >признай пожалуйста за факт, сейчас лежит на Линусе.

Линус тоже сделал то, что до него десятки раз делалось. И нет во всех его творениях ни одной свежей технической идеи, где-то уже не пройденной. Так что ничего на нем не лежит, кроме того, что на него положили. Его поделка нужна только как инструмент демпинга на рынке ОС и будет жить, пока некоторым фирмам не надоест воевать с Биллом.
 

Yegor
20 Aug 2002 12:40 PM
Про тему уже и забыли, точнее забИли ;)
 

DemonZla
20 Aug 2002 12:45 PM
Хех..
А история говорит, что Билли не написал Бейсик а только перенёс его с одной архитектуры на другую...
Так что не он бейсик изобрёл, он только его перенёс...
Никакая это не революция...
Тогда многие занимались переносом прог, так же как он, но только он первым умудрился за это деньги попросить...
Короче, переделывать - не делать...
Я надеюсь все были на http://cooler.irk.ru/hackers
 

DemonZla
20 Aug 2002 12:58 PM
Часть вторая
"Крошечный Бейсик"
Читайте и поймёте...
 

Qrot
20 Aug 2002 1:09 PM
2DemonZla: какая разница? он написал его в нужный момент и для нужной платформы.. из таких совпадений и случаются великие потрясения :)
 

glassy
20 Aug 2002 1:54 PM
2Tolik: ты не прав.
1. http://glassy.to.kg/images/view4.png
2. Как раз-таки размер я и осознал. Некоторые вещи реализуются очень просто. В ОС сообществе настолько сильные программисты, что для того, чтобы сделать какой-либо продукт, аналогичный продукту с закрытим кодом, достаточно просто его идей: как реализовать то или иное свойство будет додумано на месте. И действительно единственным препятствием для ОС-программистов является дневная работа, особенно если возможны дедлайны.
3. Про то, что не мной сделано -- опять неправ. Для того же када я патчил относительно чужие либы, и, между прочим, все, что ты увидел на том скриншоте, использует *мои* функции этой либы. Кроме того, У меня есть 2 реально работающих _красивых_ проложения (одно сложное, другое простое), кроме того, я пишу либу тем анимации, что есть новаторство, согласись. Пусть маленькое, и пусть все на самом деле ждут чего-либо типа флэша или авишек, у меня будет попроще, но *мое*, см пункт выше. И, самое главное, у меня нет перед глазами кода аналогичных продуктов, я не пользуюсь их наработками как таковыми.
4.По-настоящему первыми были Джобс с Возняком, Джобс первый чаще всех. Я его хаю?
5.Туева хуча народа пишет моджули для ядра, поддерживающие новое оборудование, файловые системы, принципиально новые фитчи вроде фреймбуфера, etc., они все что, делают то, что делалось десятки раз другими?
6.Ты видишь в линуксе только инструмент демпинга? Ты зашорен.
 

посмотрите
20 Aug 2002 2:24 PM
http://securitylab.ru/?ID=32456
 

glassy
20 Aug 2002 2:39 PM
так вот о чем там говорилось... Буду знать :) типа загоняем в регедите странную строку для поиска и кидаем ему таймер с ссылкой на эту строку...
Но про использование таймера -- чесслово, мне смешно. Я, конечно, использовал его где-то и когда-то, очень давно... Да этот механизм с select() просто рядом не стоит. И они еще называют win32 операционной системой!
 

Tolik
20 Aug 2002 2:40 PM
2 glassy

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

 

Qrot
20 Aug 2002 2:49 PM
2glassy: а что есть твой "кад", кроме как красивой поделки? вот уж воистину - лаба для 4-го курса института.. это не обосрать ради - просто не понятно, что за этий поделкой стоит кроме бесплатно потраченного на нее времени.
кстати, фреймбуфер, да.. юниксоиды в 21-м веке наконец-то поняли, что не обязательно гонять видеоданныме в тексте по пайпам, что можно работать напрямую с карточкой.. теперь это называют новой и принципиальной вещью.. кстати, по слухам, эти ребятки делают лишнюю работу - фреймбуфер собираются реализовать в Х, причем мультиплатформенный, а не спешиал фор линукс.
спроси любого программера с более чем 10-летним стажем - тебе скажут что за последние 20-30 лет НИЧЕГО принципиально нового в программировании придумано не было..
 

eXOR - billgmicrosoft.com
20 Aug 2002 2:52 PM
2 Tolik:
модель разработки.
 

eXOR - billgmicrosoft.com
20 Aug 2002 2:55 PM
2 Qrot:
> 20-30 лет НИЧЕГО принципиально нового в программировании придумано
20 - 30? Это 1982 - 1972? Ну хотя бы модульность придумана :-).
 

Qrot
20 Aug 2002 2:57 PM
2glassy: чудило, а при чем здесь селект? WM_TIMER это ГУЁвый таймер, а не ядерный... учишь тебя учишь, а все бестолку :( уже помоему на том кол-ве инфы из MSDN с разъяснениями, что здесь была выложена в обсуждениях можно было хоть что то про Win32 узнать..
 

glassy
20 Aug 2002 3:10 PM
2Tolik: ты мой кад с CATIA сравниваешь? Мои 4 человеко-месяца? lol
Или какие-то российские кады уже умеют картинки в себя помещать? Или какой-нибудь размаркетованный SmartSketch имеет такую же удобную навигацию по чертежу? И может без проблем использовать совковый кривой gost_ant.ttf, сдвинутый на 70 градусов?
Мозги не компосируй, в общем.
2Qrot: а стоит за этим демонстрация того, что можно сделать с Си в виме.

 

glassy
20 Aug 2002 3:14 PM
2Qrot: ага, весь гуйный ани винды обогнан и перегнан в одной либе... ну не показатель ли? ;)
 

Qrot
20 Aug 2002 3:17 PM
glassy: да никто и не спорит, в VIM можно много что сделать и не только с C.. регулярно, собственно :) дальше то что? где развитие, внедрение, суппорт?
 

Qrot
20 Aug 2002 3:20 PM
2glassy: хрена лысого он обогнан :) в glibc даже и сотой доли этого функционала нет :)
 

glassy
20 Aug 2002 3:20 PM
пока только развитие -- на evas2 портируем-с; опять же, ждем пока EPS с поддержкой альфа выйдет ;)
по-любому -- гласси не пользователь, гласси своим кадом не пользуется, гласси вообще не знает, как оно работает ;)
 

glassy
20 Aug 2002 3:22 PM
я про другую либу -- ecore зовется. Мой кад, например, хочет версию 0.0.3, в то время, как в природе существует только 0.0.2-1 :)))
 

Qrot
20 Aug 2002 3:39 PM
2glassy: дык родной ты мой, select вообще то не в ecore реализован :) да и пусть сначала Е 1.0 выпустят, что бы вообще можно было хоть о чем то говорить.. а то уже лет пять как все Е.17 ожидается
 

DemonZla
20 Aug 2002 3:46 PM
Qrot, великие потрясения говоришь...
Дааа... винда всех потрясла, сначала своим видом, а потом своими глюками :)
 

x61
20 Aug 2002 3:50 PM
2glassy: то, что ты описал, намного проще интерпретатора Бейсика, да и не в машинных кодах ты его писал, да и не в 70х годах.
Насчет Линуса - полный бред, он ничего не придумал сам и абсолютно никакого влияния на развитие отрасли не оказал и не оказывает. Не было бы Линуса, большие дяди выбрали бы другую ОС для борьбы с MS.
Про сильных программистов из ОС общества - гон. Ничем они не лучше тех, кто пишет программы с закрытым кодом. Опять же непонятно куда деваться тем, кто пишет и то и другое.
С какими коммерческими CAD сопоставима твоя программа? Где можно feature comparison посмотреть?
 

Qrot
20 Aug 2002 3:51 PM
2DemonZla: а ты главу в той книжке про Столлмана прочитай.. может глаза откроет
 

eXOR - billgmicrosoft.com
20 Aug 2002 3:57 PM
2 Qrot:
А че там расскрывать? Про этого пи...ла давно уже все понятно :-).
 

DemonZla
20 Aug 2002 4:00 PM
Qrot, ты думаешь я не читал?
Читал.
Всё равно винда - второсорт после UNIX любого...
 

Qrot
20 Aug 2002 4:13 PM
2DemonZla: а че, типа у нас уже MSCE есть и соответствующий сертификат по юниксам иммеется?
 

Qrot
20 Aug 2002 4:25 PM
2eXOR: да понимаешь, интересное дело - п-доболом его называют, а в идеи его п-добольные все равно верят.. хорошая поговорка есть - дурной пример заразителен :)
 

DemonZla
20 Aug 2002 4:40 PM
Qrot, ну дык!
 

DemonZla
20 Aug 2002 4:45 PM
Покеда пользователи виндовс!
Успешных вам зависаний и перезагрузок!
Платите Биллу деньги!
Хвалите Билла!
И да пребудет с вам Alt, Ctrl и святой Del!
Хахаха...
 

Qrot
20 Aug 2002 4:45 PM
DemonZla, номера сертификатов можно узнать?
 

DemonZla
20 Aug 2002 4:57 PM
Неа... их нема у меня...
я врал тебе... ВРАЛ, КАК УЧИЛ ВЕЛИКИЙ БИЛЛИ!!! ХАХАХА!!!
 

Qrot
20 Aug 2002 5:24 PM
DemonZla, что ж ты так.. а www.gnu.org.ru только в IE можно смотреть нормально :)
 

Nick - nkulykmail.ru
20 Aug 2002 8:18 PM
2 DemonZla. Болеем?
2 glassy. Если твой CAD такой крутой, и сам ты такой крутой, то че ж ты сидишь не здесь, в Силиконовой Долине, а там, в Мухосранске? Когда я был в твоем возрасте, то после очередной написанной своей проги тоже думал, что я просто непревзойден. Ничего, вырос - поумнел. надеюсь, что и ты, когда подростешь, поумнеешь.
 

Skull - sibskullmail.ru
21 Aug 2002 5:01 AM
/me с удивлением сморит на бред, который пронесся по этому форуму за последние сутки. Жуть!

2Qrot(насчет Столлмана): обидеть его может каждый. Особенно часто это делают люди, готовые удавиться из-за денег. Чем КОНКРЕТНО он вам не нравится? Воровать код, как привыкли делать в вотчине Билли, не дает? :)

2Nick: забавно! В книжке Just for Fun переводчиуа, кстати, говорит о частой ошибке перевода Кремниевой долины :) Интересно, какие либо интересы кроме маниакальной идеи свалить в Штаты и заработать кучу бакстов?
 

glassy
21 Aug 2002 7:58 AM
2Nick: Прежде всего -- было бы очень глупо для меня искать работу в кризисный для ИТ период. А за плечами у меня многочисленные призовые на школьных городских и межвузовских олимпиадах по математике, участие в международной олимпиаде по математике, окончание физико-математической школы, красный диплом инженера-программиста российского вуза. Плюс скромный кад. Думаешь, на найду себе работы в какой-нибудь из топ-100 компаний?
Мухосранск не Мухосранск, а штук 30 интернет-кафе и -клубов имеется, 4 крупных провайдера, один из которых арендует тарелку моих соседей.

2x61: "не было б Линукса" или "не было б Гейтса" -- вот это воображабли, это не аргументы, это у тебя от их недостатка.
Ты знаешь, что некоторые ОС-программисты вообще отрицают С++ как язык (в пользу Си)? Чем ты можешь это объяснить? Программирование на VB или Delphi -- это по-твоему программирование? о да, вот именно для таких приложений и придуманы гигагерцовые процессоры...
feature comparison делать не хочу, потому как моя программа требует трех либ, не идущих с обычными дистрибутивами. И даже несмотря на это, мой проект самый полный из всех evas-проектов на SouceForge.net
qcad с engy рядом даже не стоит, T-Flex CAD -- не для простых пользователей, AutoCAD LT -- engy больше на него похож -- не имеет автокомплита, не умеет сохранять изображения в png и по большому счету не имеет поддержки прозрачности вообще. Если сравнивать engy с другими cad/cam/gis, то здесь такой зоопарк -- опять же в силу закрытости и дороговизны программ, меня от них просто тошнит. Это навскидку.
 

glassy
21 Aug 2002 8:16 AM
В конце-то концов -- что мне надо? Стул с подлокотниками на газопатроне и высокой спинкой, SyncMaster 700ift, мозилла и сервак с музыкой неподалеку :)
 

glassy
21 Aug 2002 8:17 AM
хе-хе, и чтобы шеф мной дорожил, и не мог уволить :)
 

glassy
21 Aug 2002 8:17 AM
шучу
 

DemonZla
21 Aug 2002 9:29 AM
Nick, а вы не очень то, а то у вас там тожа и негров бьют, и президент косноязычный, и спецслужбы выпендриваются, и DMCA приняли... КУ!
Qrot, вот и смотри! Только не говори что у тебя, великого защитника микрософта, нету IE, не поверю!
 

Qrot
21 Aug 2002 9:54 AM
2DemonZla: да есть, как не быть.. да только что мне на него смотреть? по сравнению с оригинальным там ничего нового нет, да и на гну.орг за последние 5 лет особых изменений не наблюдается.

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

DemonZla
21 Aug 2002 10:08 AM
Qrot и что там тебе не нравится?
 

Qrot
21 Aug 2002 10:14 AM
2DemonZla: не понял, а что мне там должно нравится? но в частности - ложь про превосходство открытого софта над закрытым в плане надежности и кол-ва ошибок.
 

Qrot
21 Aug 2002 10:20 AM
еще в частности - бредни про светлое будущее с гнутым софтом и сама идея лицензии
 

glassy
21 Aug 2002 10:24 AM
2Qrot: после страуструбовского "дизай и эволюция С++" я тоже стал его эмулировать -- и что? Трудно что-ли?
 

glassy
21 Aug 2002 10:27 AM
2Qrot: зато КАКИЕ ПРЕИМУЩЕСТВА!!!
 

Qrot
21 Aug 2002 10:29 AM
glassy, а зачем его эмулировать, если можно на нем писать? тем более не понятно - если ты его эмулируешь, то почему не признаешь?
 

DemonZla
21 Aug 2002 10:37 AM
Qrot, хм по твоему лучше 100 чел в конторе, чем 1-2 миллиона по всему миру?
А чем тебе не нравится идея запрета на отбирание прав пользователей?
 

sergod
21 Aug 2002 10:37 AM
2 Qrot:
Если в закрытом софте, используя метод тыка и чтение документации, народ умудряется постоянно находить новые и новые дыры, то СКОЛЬКО их там???
а АПИ таки дефектно, раз для сервисов предлагают воздерживаться от мессаг.
 

Qrot
21 Aug 2002 11:05 AM
2DemonZla: чего мне не нравится?! каких прав?! у кого?!!! GPL у МЕНЯ как у разработчика отбирает право закрыть СВОИ разрабтки, если я как основу взял GPLный код, что приводит к невозможности использовать этот код. это извращение самой идеи открытого софта.
 

Tolik
21 Aug 2002 11:10 AM
2 glassy

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

А сам работу найти не может ... Год ему кризисный ...

Так выпьем за то, что одним помогает петь, а другим мешает танцевать - за микрофон

P.S. В компаниях TOP-100 нужны не полупрозрачные кады, а Delphi и VB. Ибо там люди деньги зарабатывают, а не пальцами разводят. Говорю, как начальник отдела ИТ компании из первой десятки на своем рынке. Так что учите то, за что деньги платят. $-)

 

DemonZla
21 Aug 2002 11:10 AM
Интересно где бы сейчас был Linux без GNU...
В ж... наверно, или в микрософт...
А микрософт был бы монополистом по имению всех пользователей мира... даа...
Хехехе... капитализм же, мать его... человек человеку волк...
 

DemonZla
21 Aug 2002 11:15 AM
Qrot, балда, от тебя просят только исходники раскрыть, чтобы все знали какой ты у нас гений, а деньги брать за свой софт никто не запрещает, продавай хоть за миллион баксей, только исходники приложи и укажи чьи разработки ты использовал...
Нафиг закрывать ПО, если деньги всё равно получишь?
 

Qrot
21 Aug 2002 11:47 AM
DemonZla, ты вроде у меня в закадычных приятелях не числишься.. так что следи тчо пишешь
 

Qrot
21 Aug 2002 11:49 AM
2DemonZla: не всегда есть желание реализацию раскрывать, идею (протокол, формат) опубликовать - можно и нужно, но не реализацию.
 

DemonZla
21 Aug 2002 11:50 AM
Qrot, за "балда" извеняюсь, эмоции...
но всё же зачем закрывать то?
 

DemonZla
21 Aug 2002 11:56 AM
Qrot, хм...
Вот поэтому и появляются кучи реализаций одного и того же, где от Sun, где от Microsoft...
Всё закрыто, шито крыто...
А потом поди разберись как программер какую-либо фишку сделал. если он уже умер давно... и опять начинается изобретение велосипеда...
Закрытие технологий приводит только к торможению прогресса, потому что на "изобретение заново" уходит и время, и деньги, и силы, а на новое не остаётся!
 

Tolik
21 Aug 2002 12:08 PM
:-)))
Ты думаешь тут исходники помогут ?

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

Не поможет, все равно будут изобретать велосипеды.
 

DemonZla
21 Aug 2002 12:17 PM
Tolik, будут, одно дело когда выясняется, а другое когда этого нельзя и даже запрещено выяснить из-за закрытости софта... вот в чём беда то...
 

Tolik
21 Aug 2002 12:33 PM
А ты знаешь, вопрос спорный, что лучше для прогресса - дать возможность автору изобретения заработать или отдать всё в общее пользование. Есть мнение, что первое зачастую для прогресса в целом лучше.

Кстати - если ты знаешь, что кто-то эту задачу уже решал - практически всегда можно не делать самому, а просто купить у автора.
 

Qrot
21 Aug 2002 12:52 PM
2DemonZla: я тебе не про закрытие технологии говорю, а про реализацию. на самом деле, gpl точно так же как и коммерческие лицензии, закрывает код - коммерческие лицензии для всех кто не является работником корпороации, а gpl - для всех, кто не является членом гнутого комьюнити. на мой взгляд, лучше работать в конторе/на себя и иметь хлеб с маслом, чем за идею и иметь шиш.
 

eXOR - billgmicrosoft.com
21 Aug 2002 1:33 PM
2 Qrot:
BSD - и пофигачили :-).
 

glassy
21 Aug 2002 1:36 PM
2Tolik: Я же сказал, что AutoCAD LT ему как пример для подражания. А задумка была сделать кад получше, чем QCAD. Успокоился?
А про Delphi и VB -- я скорее для холодильников писать буду на С/С++, чем для бухгалтеров на VB.
 

glassy
21 Aug 2002 1:37 PM
И кстати, работу сам себе найти я могу. Филипс вон вечно в поиске, например...
 

glassy
21 Aug 2002 1:42 PM
Блин, опять же в банк звали, 5 лет на $150, потом курсы и сертификация по ораклу, потом еще 2 года работы и можешь быть свободен как ветер в поле. Текучка у них там ИТ-спецов, видите-ли :)
 

Tolik
21 Aug 2002 2:28 PM
На 150 ???

Не за 150 пускай Опен-Соурсники на C++ для холодильников пишут.

Не дай Бог так оголодать
(с) анекдот
 

glassy
21 Aug 2002 2:53 PM
В том-то весь и прикол, что это у тебя из зарплаты деньги за квартиру и курсы с сертификацией вычитают :) Надеюсь, ты не забыл, сколько получают сертифицированные администраторы оракла в цивилизованном мире?
 

Tolik
21 Aug 2002 3:08 PM
Для начала - ты таки программист или администратор ?
Это два разных менталитета и я программиста к администрированию постарался бы не подпускать и наоборот. Так что - если ты творец - то на кой тебе оракл админить? А творчеством админу заниматься противопоказано, это кончается потерей данных. Там нужен менталитет не чтоб красиво, а чтоб надежно.

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

x61
21 Aug 2002 4:02 PM
2 glassy: приведи хоть один аргумент в пользу того, что Линус оказывает влияние на индустрию ПК.
Все остальное - полный респект Толику - он тебе очень вежливо (я б так не смог :) все объяснил. Я могу только подтвердить его слова - остается надеяться, что у тебя это возрастное, в том числе 150$ как пример крутой зарплаты. Хотя я и отдаю должное твоему отношению к другим продуктам в стиле "да что тут делать?" - сам таким был :) Опыт разработки хотя бы одного по-настоящему большого проекта расставит все на свое места.
Насчет "некоторые ОС-программисты вообще отрицают С++" - ты делаешь очень распространенную ошибку, путая programmer и coder. Программисту пофиг на чем писать, разве что, Visual Basic надо избегать, как учит мудрый текст про ДАО программирования по ссылке, приведенной eXOR :)

2eXOR: во-первых, спасибо за ссылку :)
во-вторых, я резко против многих заявлений и действий Столлмана, но согласись, как программист, он заслуживает уважения.
 

Qrot
21 Aug 2002 4:11 PM
2eXOR: " BSD - и пофигачили :-)." - да, ты меня понимаешь :))
 

DemonZla
21 Aug 2002 4:37 PM
Qrot, про деньги я уже говорил, никто тебе не запрещает продавать...
Хотя, если ты сильно жадный, то для тебя я полагаю словао"свобода" ничего не значит, а слово "деньги" значит слишком много...

Tolik, ну давай купи исходники винды у микрософта, а я посмотрю...
Чтож мне, если я какую фенечку хочу и могу сделать в проге, автора просить и платить ему?
Да мне легче самому сделать и бесплатно.
 

Qrot
21 Aug 2002 8:11 PM
DemonZla, а почему ты решил что я жадный? я хочу продавать свой труд по разумной цене, всего лишь.. а гпл мне продавать не запрещает, но мешает, и любые росказни на тему "продавай под гпл,
это же не запрещено" я считаю лицемерием и демагогией, ибо никто в здравом уме не купит то, что можно получить по цене носителя горбушке, митьке и прочих рынках.
и про свободу мне не нужно рассказывать - под гпл ты не свободен в выборе, ты не можешь решить открывать тебе СВОИ исходники или нет, я тебе уже писал об этом
 

Nick - nkulykmail.ru
21 Aug 2002 8:18 PM
2 Tolik. Давно не встречал здесь воспитанного и выдержанного специалиста из IT области. Если тебе будет не сложно, свяжись со мной по email или по ICQ. Мой ICQ номер 95615048
Очень хочется поговорить с нормальным человеком.
 

Interrupt
22 Aug 2002 4:29 AM
Да, тезка (меня тоже Толик) зовут достаточно грамотно все разьяснил.
Да, Гласси, я тоже когда на втором-третьем курсе написал свой первый компилятор Бейсик-подобного языка, который в .com формат генерит, ходил растопырив пальцы. Потом уже, через нескольно лет после университета, уехав и поработав над проектом (где еще над ним человек 20 трудилось), понял, насколько мои студенческие поделки отличались от настоящих проектов. Хотя все-таки опыта тоже прибавляют :)

А Линукс - система неплохая. Но уж новаторского там точно ничего даже в помине нет.
 

eXOR - billgmicrosoft.com
22 Aug 2002 8:15 AM
2 x61:
> но согласись, как программист, он заслуживает уважения.
Наверное. В принципе Emacs хорошая штука... но почитайте что он там пишет о том как должны писать программисты под GPL... это ж просто сущий ужас.
1) Постоянные изобретенния велосипедов.
2) Отсутствие оптимизаций
В общем... может быть как разработчика я его еще могу принять... но все остальное меня просто шокирует.

> во-первых, спасибо за ссылку :)
Всегда пожалуйста.
2 Nick:
А они все обычно заносчивые и невыносимые ;-).

2 Qrot:
А про GPL.. ну ты же знаешь механизмы использования GPL кода в закрытых программах... как в коммерческих, так и нет... так чего - ж тогда его хаять ;-). GPL - это просто очень красивая идея... :-).
 

eXOR - billgmicrosoft.com
22 Aug 2002 8:15 AM
ну или не очень ;-)
 

Qrot
22 Aug 2002 10:16 AM
2eXOR: ну знаю. зачем тогда огород городить если идея лицензии не работает?
 

glassy
22 Aug 2002 12:36 PM
2Tolik: Важно сочетать лучшие качества. Например, по большому счету я "творец", но с другой стороны, очень консервативный в некоторых отношениях. Например, не гоню процессоры и не сливаю "последние кульные" программы. По мне так вообще бы ничего не скачивать... но вот багфиксы... В банк идти я не хотел и не хочу... А то что з/п там низкая, так это вполне окупается получаемыми там знаниями и кредитом на квартиру.
 

glassy
22 Aug 2002 1:27 PM
2x61: $150 -- это крутая зарплата? Как же ты про меня плохо думаешь... Толик, конечно, сказал очень правильно, но не думаю, что у меня "это" пройдет с возрастом. И программиста с кодером я не путаю. Именно программисты, а точнее девелоперы, выбирают язык, на котором будет сделано то или иное. И они не по наслышке знают, какой код выходит из С, а какой из С++. Мне даже кажется, что ты впервые стал пользоваться списками и хешами впервые на Java. Вот скажи мне, что это не так. Мне даже немного тебя жаль, потому что я видел код покрасивее (например, работа с градиентами, я бы ссылку вставил, только она слишком длинная).

2Interrupt: после компилятора я не ходил, расстопырив пальцы. Компиллятор в виде лабы -- это очень глупо. Хотя из всех своих лаб я лучше всего помню лабу по лиспу, она хоть и была тоже глупой (на прологе были глупее :)), но сам язык меня потряс.
Про крупный проект -- согласись, engycad лучше qcad-а (то что я импорта-экспорта в dxf не сделал -- контрибьюторам оставил, велосипед, все-таки, захотят, пусть реализуют). Я понимаю, что для тебя крупный проект -- это что-то типа нового GIS или редактора html, извини, у меня по этому поводу свое мнение. Первое при большой массе усилий будет иметь очень маленькую функциональность, а второе никому не нужно, потому что есть mozilla, и, соответственно тоже -- деньги на ветер. Вот скажи мне, например, сколько пользователей Mechanical Desktop используют его на 100%? Приложения же вроде ворда или поверпойнта не такие уж и сложные в программировании. Я вообще удивился, почему не было, например, множественного выделения в Экселе, раньше -- это сделать -- как два пальца об асфальт.

2Qrot: e17 практически готов к релизу ;)
 

glassy
22 Aug 2002 1:34 PM
сорьки -- про ворд :)
Я бы использовал другие форматы файлов, попроще :)
 

glassy
22 Aug 2002 1:43 PM
2x61: про Линуса. То есть, линус все-таки имеет отношение к написанному в статье
http://www.linuxandmain.com/modules.php?name=News&file=arti cle&sid=141
 

eXOR - billgmicrosoft.com
22 Aug 2002 1:52 PM
2 Qrot:
Суть GPL с условиями обхода этой лицензии в том, что твой исходник никогда не закроют (и только твой - производные могут закрывать сколько душе удобно). :-).

 

Qrot
22 Aug 2002 2:28 PM
2eXOR: да по любой лицензии мой исходник никогда не закроют - пока я не захочу
 

Tolik
22 Aug 2002 2:39 PM
Ни программисты, ни девелоперы (кстати, кто это такие ?) НЕ выбирают языка, на котором будет писаться проект. Это делает архитектор проекта, (возможно - с учетом квалификации имеющихся под рукой программистов). Программист же - или пишет на чем сказано, или ищет другую работу.

К слову - хороший программист пишет хороший код на чем угодно, до VBScript включительно. Плохого - не спасет никакой C++ (который, кстати, вообще противопоказан 90% считающих себя программистами, ибо не сдерживает излишнего полета фантазии, что, как правило, куда как хуже, чем её недостаток).

Идеального языка на все случаи жизни нет, и быть не может, а в каждом конкретном - наилучшим может оказаться и C и Delphi и VB и много что другое.
 

glassy
22 Aug 2002 2:53 PM
2Tolik: ты забываешь мой контекст. Вот я например, пишу на чем хочу, что хочу, когда хочу и сколько хочу. Разницу чувствуешь?
 

glassy
22 Aug 2002 2:59 PM
и про девелоперов... Qrot им как бы хотел заделаться даже...
 

Tolik
22 Aug 2002 3:13 PM
Из разговора с лектором в институте (имело место быть на самом деле):

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

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

P.S. Купи и прочти: Брукс "Мифический человеко-месяц". Тебе многое станет понятнее.
 

Qrot
22 Aug 2002 3:24 PM
2glassy: не понял. поподробней пожалуйста про " и про девелоперов... Qrot им как бы хотел заделаться даже..."
 

eXOR - billgmicrosoft.com
22 Aug 2002 9:33 PM
2 Tolik:
В том - то косяк большей части FSF софта, что нету архитектора... особенно остро это чувствуется, когда читаешь исходники какой - нибудь библиотеки. :-(
 

RIK
22 Aug 2002 10:32 PM
2 glassy
Кто-то из великих сказал - не было, нет и не предвидится языка программирования, на котором писать плохие программы было бы хоть немного труднее, чем хорошие. А выбор языка программирования определяется не только задачей и квалификацией программистов, но и простотой сопровождения, которое будут осуществлять другие люди. По моему опыту проект, достаточно грамотно реализованный на C++, сопровождать заметно проще, чем написанный на С.
 

Interrupt
22 Aug 2002 11:07 PM
glassy, для меня большой проект это не html редактор :)), и вообще как правило я не переписывают то, что уже сделано и хорошо работает (как пример твой CAD, которым кроме тебя никто не будет пользоваться). А то чем я занимаюсь - это RTOS операционки и компоненты под операционки на мобильных телефонах, а также всякие надстроечные платформы над этими операционками. По крайней мере, что-то новое делаю, а не делаю клоны уже существующих программ, попутно хая чужие OS :)
Просто я имею дело с разработкой OS, и мне неприятно слышать когда люди с презрением об этих OS отзываются (как в твоем случае с Windows), только потому что имеют очень слабое представление насколько это сложный и трудоемкий процесс (ах, да - и к тому же требующий очень приличных знаний :).
 

glassy
23 Aug 2002 7:24 AM
Personal Information
User ID: 587212 ( Skills Profile )
Login Name: qrot
Real Name: Qrot
Email Addr: qrot at users.sourceforge.net
Site Member Since: 2002-07-31 04:18
Diary And Notes
Diary/Note Entries: 0
Project Info
This developer is not a member of any projects.
 

Skull - sibskullmail.ru
23 Aug 2002 7:28 AM
2eXOR: "нету архитектора" - ну, конечно! Можно подумать WinAPI писал здравомыслящий человек?! :)))

2RIK: добавляю про преимущество C++ - еще и разрабатывать совместно и формировать коммунити. Где сейчас KDE и где Gnome? :))

2Interrrupt: насколько сложный процесс, говорите? Так этого никто и не отрицал! Другое дело, что при хороших задумках на выходе какашка получается говорит о кривости разработки и о том, что нефиг лезть ламерам в такие сложности. :) Windows - как раз блестящий пример для иллюстрирования вышеуказанной мысли.
 

glassy
23 Aug 2002 7:49 AM
2Tolik: зарабатывать я хочу ровно столько, чтобы жить на последнем этаже какого-нибудь двадцатиэтажного здания в приличном городе и частенько устраивать там барбикью. Успокоился? Квалификация инженера-программиста делает из меня любителя? С чего бы это я -- и не профессионал? Мой код непрофессионален? Или архитектура моего проекта имеет серьезные недостатки?
Нет, я для тебя любитель, потому что на венгерскую нотацию забил. Глупо. Аргументы в студию.

2Interrupt: ты статью прочитал? И не говори после этого, что ты не изобретаешь велосипедов. Кстати, вот как раз таки в этой области я был бы непротив работать. И не надо из меня делать самого рьяного хаятеля Win32, для меня это не хаяние, а всего лишь kind of fun. Почему мой CAD -- клон чего-то что уже сделано и хорошо работает? Почему моим кадом никто не пользуется (как я уже говорил, сам я им не пользуюсь)? Аргументы в студию.

2RIK: достаточно грамотно реализованный на C++, сопровождать заметно проще, чем <неграмотно> написанный на С? Ты сравнивал грамотный код qcad-а и неграмотный engycad-а? Отправляю тебя опять к Страуструпу с его "дизайн и эволюция".

2eXOR: вот для этого и проталкивается маленький скрипт kerneldoc ;)
 

glassy
23 Aug 2002 9:04 AM
Уговорили, пусть "разработчик" вместо "девелопер" :)
 

RIK
23 Aug 2002 9:16 AM
2 glassy
Совершенно очевидно, что я имел в виду "одинаково грамотно" написанные проекты. И еще - Skull правильно заметил - совместная разработка на C++ осуществляется проще. Кстати, проблемы совместной разработки и сопровождения в некотором смысле схожи - и там и там работа с кодом без _полного_ знания того, как устроена программа целиком.
 

eXOR - billgmicrosoft.com
23 Aug 2002 9:19 AM
2 Skull:
> Можно подумать WinAPI писал здравомыслящий человек?! :)))
Ты перевел разговор в другое русло. Я про WinAPI не говорил. По мне так у него тоже дизайн не ахти... вот у багланда дизайн API всегда был на уровне... только вот ни одной нормальной реализации со времен BC3.1(TVision) я не помню. Кстати, а винде есть замечательная штука WTL называется... (спасибо Qrot'у за подсказку) - вот какую обертку надо было делать сразу...

> вот для этого и проталкивается маленький скрипт kerneldoc ;)
А кто его придумывал? Хакер? А нужен архитектор. Хакер не может быть архитектором, ибо в архитектуре не должно быть хаков.
 

eXOR - billgmicrosoft.com
23 Aug 2002 9:20 AM
последний параграф был к glassy
 

eXOR - billgmicrosoft.com
23 Aug 2002 9:21 AM
2 RIK:
Выигрышь от какого - либо языка чувствуется на проектах до 700 чел/час... если проект больше - то уже абсолютно безразлично на чем он написан. Важен не язык, а единый стиль для всей комманды и достаточное количество документации.
 

glassy
23 Aug 2002 9:23 AM
2eXOR: насколько я помню скрипт kernerldoc уходит корнями в javadoc, вобщем не понял я про хакера.
 

glassy
23 Aug 2002 9:31 AM
2RIK: сейчас я сижу в небольшом конструкторском бюро, нахожу множество похожих с software черт.
 

DemonZla
23 Aug 2002 9:49 AM
Qrot, хех, вот тото и оно, ты хочешь взять достояние миллионов программистов, переделать его и потом закрыть ото всех, не дав возможности, которые были даны тебе, что означает. что ты отбираешь права данные лицензией. Теперь будешь говорить что ты не жадный?
 

glassy
23 Aug 2002 9:54 AM
2DemonZla: каждый программист жадный. Самая жадная и ленивая профессия :) Ты думаешь я для чего BSD-лицензию пропагандирую? хе-хе-хе -- чтобы мне потом больше досталось
:)))
 

DemonZla
23 Aug 2002 9:58 AM
glassy, тебе не достанется :)
Они жаднее...
А может Билли прикарманит BSD, а потом выдаст её за очередную винду :)))
 

Qrot
23 Aug 2002 10:02 AM
2glassy: :)) ты разговор про 500 метров с шеллом помнишь? это я шелл хочу, а не девелопером стать.. времени нет даже на то что бы какой-нить проект из существующих туда запостить, а ты еще хочешь что бы я писал что-то просто так...
 

glassy
23 Aug 2002 10:11 AM
http://www.cuddletech.com/glassy_ape_iconbar-r9x-shot3.jpg
 

Qrot
23 Aug 2002 10:13 AM
DemonZla: почему это я не даю таких возможностей? у них ровно такие же возможности как и меня - для них есть тот же открытый код, который я начал использовать у себя.
а вообще, программер, работающий на контору, не волен - открывать исходники или закрывать, потому как это определяется политикой компании. отсюда следует невозможность использования гпл-кода в такой конторе.. если учесть что таких компаний подавляющее большинсвто и количество все увеличивается - гпл бесполезна для подавляющего большинства программистов.
 

glassy
23 Aug 2002 11:26 AM
давить компании с плохой политикой! :)
 

MX
23 Aug 2002 11:46 AM
2Qrot
>гпл бесполезна для подавляющего большинства программистов.

Для "коробочных" продуктов - в основно да.
Но большинство делает как-раз под конкретную задачу заказчика. В этом случае код открывается только заказчику. Девелоперы получают деньги, заказчик возможность модифицировать код (сам, через исполнителя, или другой софт-компании).
Так что высказывания, что GPL ведет к краху капитализма - просто пропаганда. Как раз во многих случаях - это зашита прав потребителя (заказчик имеет право модифицировать код и выбор исполнителя для такой модификации).
 

Qrot
23 Aug 2002 12:19 PM
2MX: да все конторы делают что то под конкретного заказчика, если таковой имеется.. и исходники отдают, если попросят, но не под гпл, а под более другой, ибо исходники являются интеллектуаьной собственностью, и разбазаривать эту собственность никто не будет. кроме того - что же это, извините, за херня, контора выпустила продукт под заказчика, ожидается лакомый кусок в виде многолетней поддержки - а тебе на, выкуси? так никакую разработку не окупишь.. так что крах капитализма имеет место быть. а права свои потребитель может и должен через суды защищать, их для этого специально и придумали - если невыполненно положение контракта, то прямая дорога
 

Yegor
23 Aug 2002 12:25 PM
2MX, Обычно если клиент заказывает проект и платит за его разработку, то все авторские права на этот проект принадлежат ему, включая сырцы и алгоритмы. Поэтому ему GPL не нужна :)
 

Tolik
23 Aug 2002 12:45 PM
2 glassy

Объясняю. Венгерская нотация тут ни при чем. Я её сам не импользую. Профессиональное программирование (и не только программирование) - это выдача продукта:
- заданной функциональности
- в заданные сроки
- при заданных затратах
- с возможностью развития продукта
- с минимальной зависимостью от личностей разработчиков
- с тестированием, документацией, внедрением ...

Такая работа слегка отличается от программирования for fun, в котором основным достоинством КАДа объявляется битмап фона и полупрозрачность интерфейса. При профессиональной работе - тебя начинают волновать слегка другие вопросы и, поработав однажды в таком режиме, ты поймешь, что твои нынешние речи отдают лишь твоей социальной незрелостью. Почитай того же Брукса, там все это замечательно описано.

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

 

glassy
23 Aug 2002 2:38 PM
lol, и где же это я объявил главным достоинтсвом битмап (кстати жипег, из kde-wallpapers, ключ /bgimage) Про интерфейс уже было сказано -- это не более 6% от всего остального. Про заказчиков тоже тут много раз говорилось -- если бы они требования давали раз и до конца, это было бы идеально :)
Кстати, твой список немного отличается от того, что нам давали на лекциях.
 

Tolik
23 Aug 2002 2:56 PM
ну а кто рассказывал про красивый интерфейс ?
я там, кроме фона ничего больше красивого не усмотрел, здорово похоже на досовский автокад

Кстати - за 6% - интересно :-)))
как мерил ?

Ну, а про заказчиков - идеал - это хорошо, но не бывает
 

Interrupt
23 Aug 2002 11:45 PM
glassy, да мы все ценим твой КАД, другое дело, что кроме тебя им никто пользоваться не будет, ну это уже твое личное дело...

А про 6% это действительно прикольно. Где бы мне такой tool достать, который бы мерил процент функциональности на скриншоте от общей функциональности программы и еще с такой точностью?
 

glassy
24 Aug 2002 9:19 AM
2Tolik: lol, о да, досовский автокад имел толщину у линий, рисовал их и ттф сглаженными, умел вставлять изображения и умел сохранять картинки 2000x2000 в png rgba?
Про шесть процентов -- для одних исходников реализация интерфейса недотягивает до 10%.

2Interrupt: функциональность также можно с объемом кода связать.
Про "никто пользоваться" -- как известно, лидером среди дистрибутивов линукса является редхат. Этот дистрибутив не содержит необходимых библиотек, сами библиотеки находятся в постоянной разработке. Как я уже говорил, предстоит портирование на evas2, соответственно, возможно, на DirectFB. Вот после этого можно будет поговорить. Релиз был сделан так рано поскольку далее мне нужны контрибьюторы. Насколько мой кад востребован, можно судить по счетчику на домашней странице, по форуму там же или на FM. С четырьмя своими пользователями я переписываюсь, как минимум пять других компилировали в целях изучения возможностей evas.

И рассказывайте после вышесказанного, что вы объективные ай-тишники...
 

DemonZla
25 Aug 2002 12:27 AM
Qrot, я вижу ты ещё ни разу не платил по п олной за софт.
Да и GPL только поверхностно читал.
Не буду больше спорить, будущее покажет, где правда.
 

Tolik
26 Aug 2002 6:39 AM
досовский автокад - имел библиотеки примитивов, умел выводить чертежи (под DOS !) на кучу устройств выводи и (!) был в итоге лидером на рынке. Которым пользовались не 4 пользователя, а десятки тысяч (а скоре всего - и сотни).
Ну и - это было под DOS (кто не помнит) - вся графика, весь ввод-вывод писались руками и для каждого поддерживаемого устройства. Это тебе не чужие библиотеки патчить. Кстати, а чего их патчить ? Хорошие библиотеки в этом не нуждаются.

Если тебе неймется с чем-то себя сравнить - пойди на http://www.ascon.ru/ и посмотри, что есть КАД. Наш, кстати, российский. Например в разделе "Модели и чертежи"
 

glassy
26 Aug 2002 12:40 PM
2Tolik: ну это уже несерьезно...
Твоя куча устройств понимает язык HPGL, или PS, или PCL, их всего три, и я сам видел устройство, которое не поддерживал автокад -- какой-то DIGIGRAPH из восточной европы. В моем случае все было не хуже, если бы не растровые изображения и альфа-канал.

Ты клинишь? Я же сказал, к тому времени у библиотеки не было поддержки в пользу следующей версии (0.6.0 vs 1.0.0), а я был потрясен уже сделанным, но с пропущенной реализацией пары нужных мне функций. Сравни -- я впервые скомпиллил 0.6.0 в конце января, а evas2 для тестеров была выложена в июле. сам патч (знаю, make-файл включать не надо было) здесь http://da2001.hotmail.ru/fli.patch Как я уже сказал, эти функции были просто еще не реализованы.

Мой кад предназначен для выполнения чертежей (==2D), а не моделирования(==3D). Причем в X Window System, на большом числе платформ, и распространяется на условиях BSD-лицензии.

Про КОМПАС я уже говорил. Товарищи просто изобретают велосипед, глядя на западные продукты. Кроме уже мною сказанного, у них нет ни ОС-продуктов, ни продуктов под линукс, ни бесплатных полнофункциональных версий. Вот уж кто не привносит ничего нового, так это АСКОН. Вот иди и сравни КОМПАС с CATIA от IBM.

Кстати, если ты и дальше хочешь продолжать comparing penis sizes, покажи мне код и архитектуру своего продукта.
 

glassy
26 Aug 2002 12:48 PM
Ну мля... где толщина линий?
 

Tolik
26 Aug 2002 2:53 PM
Вот тут и проходит точка водораздела.

А я слышал мнение о компасе инженера-механика со стажем в несколько десятков лет, который просто пищал от восторга.

КЛИЕНТ ПИЩАЛ !!!
Не автор программы, от своего творения, а клиент, готовый из скромного бюджета завода найти $1300 басков на НУЖНУЮ ВЕЩЬ.

Вот когда ты поймешь, насколько такая оценка выше твоей - вот тогда ты немного сместишься из любителей в прфессионалы.

А какие там патчи и версии кто компилировал - для оценки как продукта, так и автора - не существенны абсолютно.
 

dem
26 Aug 2002 5:55 PM
Эх. читал читал.
Glassy, не слушай ты их, я буду пользоваться твоим кадом. Хотя конечно это не столько кад сколько полукорел. Но мне хватит и очень пригодится.
Всем: Да бухгалтера тоже люди, да работать нужно качественно. Но glassy единственный кто показал что-то СВОЕ т.е. Сделанное им! А вы только на чужое киваете. Пусть делает, пусть раздает бесплатно, или за деньги вам-то что? Вот поэтому бухгалтерам он (glassy) и не делает софт, потому что вокруг них крутятся очень жадные люди (и сами они часто до денег жадны и правы потомучто их уже не один раз дурили такие теоретики). Кстати я сам с бухами работаю, и очень есль милые люди.
2 Нового вообще ничего не бывает, все делается на базе старого опыта. И Linux принес в таком случае очень много нового. Намного больше чем Windows и Билли. В Win нет ни одной фичи которой небыло-б до нее. Я 5 лет читаю рекламации от МС и если не сразу то спустя некоторое время натыкаюсь на то что их НОВШЕСТВАМ уже много лет, так что. Господа покажите ЧТО ВЫ СДЕЛАЛИ САМИ а потом учите других.
Пошел дальше работать.
 

MOHTEP
27 Aug 2002 2:41 AM
2dem: про жадных - лучше замнем. Просто Glassy ворует время у своего нанимателя. Не похоже на то, что он это вечерами лабал. То же касается остальных любителей GPL. Банальная попытка перераспределить прибыль. Чем-то напоминает торговлю краденым со склада...
 

Shadow
27 Aug 2002 2:52 AM
2 glassy:
Кинь мне на мыл плиз moon @ nwgsm.ru (без пробелов) урл нового файл-манагера, котороый на Джобсовский похож (вроде ты сюда сцылку на него постил - я потерял, где...)
 

Shadow
27 Aug 2002 2:54 AM
2МОНТЕР:
Вот потому то я теперь только на себя и работаю. Теперь я замдиректора... И определяю стратегию.
И красть время я могу только у себя... Хм... Странно звучит.
 

Tolik
27 Aug 2002 6:39 AM
2 dem

Это кто ты такой, что MS тебе _рекламации_ пишет?
Марш в школу, учить русский язвык ;-)

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

DemonZla
27 Aug 2002 8:42 AM
МОНТЕР, интересное мнение...
У когож GPL ворует? Уж не у Билли ли?
Можно подумать программеры должны пахать без отдыха всё мремя...
А про время отпуска вы мистер забыли? За один месяц много можно наваять...
 

glassy
27 Aug 2002 8:43 AM
2Tolik: могу поспорить, что твой клиент пищал бы и от марьяжа, и от Mechanical Desktop. А вот КБ Туполева все равно выбрало мейнфреймы с CATIA. Имхо в данном случае просто надо учесть, что обычный автокад без фенек стоит 4000 уе, MD под десять штук, а КБ Туполева выложило порядка миллионов.

2Моньер: по контракту $25 daily payment, а по бюджету организации на меня -- не более 72 рабочих дней в году. Так что кто у кого еще ворует. И с апреля по июль я работал лишь по субботам.
 

glassy
27 Aug 2002 8:58 AM
забыл сказать, почти год повышение обещает :)
 

Tolik
27 Aug 2002 9:33 AM
2 glassy

Проспоришь.
Не надо считать идиотами всех вокруг, это не способствует жизненному успеху.
 

dem
27 Aug 2002 10:03 AM
2 Tolik ( 27 августа, 2002, 6:39) Я потенциальный покупатель продуктов MS (и не только потенциальный).
Кроме того моя грамотность в плане русского языка не играет роли, язык это только носитель инормации, поэтому прошу не отходить от темы. А теперь к делу. Фирма в которй я работал в течении 2-х лет ищет разработчика программы для торговли на сумму около 12-15 тыс $ и не находит.... Нет разработчики есть, но обычно это шарлатаны, которые все разрушают, а свое сделать не могут. Вот поэтому я и занимаю сторону glassy (хоть он иногда слишком категоричен). Он _аргументировал_ свое мнение!
 

Tolik
27 Aug 2002 11:23 AM
Рекламация - это НЕ реклама.
Это ЖАЛОБА на несоответствие.

Ты можешь получать рекламации от МС только если они тебе что-то заказывают, а ты сделал, но плохо. Сомневаюсь, что ты есть поставщик МС :-)

На $12 на заказную систему, да с success story - никого и не найдете, на эти деньги можно максимум купить что-то готовое и минимально адаптировать под себя.

Разработчиков с реальными предыдущими успешными внедрениями - на эти деньги (не в Москве) - максимум оплатите 2 человеко-года (если без налогов), что для создания и внедрения реальной комплексной системы (а не шарлатанства, типа "вот сейчас я вам за месяц что-то сваяю") - явно маловато будет.

Умножьте сумму в 3-4 раза.

А glassy - пока ничего из искомого заказчиком не сделал и пишет "для себя". Вот когда у него пойдут продажи (или внедрения, если он будет забесплатно внедрять) - тогда и поговорим, а скриншотов понарисовать, аргументируя ими превосходство над ИСПОЛЬЗУЕМЫМИ системами - много ума не надо.
 

Chkaloff
27 Aug 2002 11:27 AM
2 dem:
>Он _аргументировал_ свое мнение!
Каждый аргументировал свое мнение. И не только glassy.
Но на мой взгляд, аргументы Толика гораздо более убедительны и адекватны реальности, чем заявления glassy про проблемы с библиотеками и поддержку png.

Glassy сделал свое:
- Это хорошо для его опыта
- Это возможно хорошо для 0 - 10 пользователей его када.
- Это никак для индустрии и не может быть как.

Glassy защищает свое:
- Это хорошо в качестве именно защиты
- Это плохо, когда он представляет это как шедевр, причем сравнивая это с историческими вещами гораздо большего масштаба и значимости.

Glassy ругает чужое:
- Это плохо вообще (безотносительно)
- Это плохо относительно Билли, т.к. очевидно, что еслиб на его месте был Торвальдс, то glassy его не ругал. Glassy не объективен.
- Это плохо, потому что glassy не делает скидку на время. Первому всегда трудно. Он делает не корректное сравнение.
 

eXOR - billgmicrosoft.com
27 Aug 2002 12:00 PM
Ну все.. порвали, как тузик тряпку :-.
 

dem
27 Aug 2002 12:58 PM
2 Tolik Насчет рекламации ты прав (проверил), естественно спутал с прокламацией. 12 тыс $, для региона где зарплата 100 $, это неплохая зарплата, это мало??? Ты конечно многое говоришь правильно, но иногда не очень верно Ж:-) (не в ту степь).
2 Chkaloff у правды 2 стороны. Ты говориш что для индустрии его кад это никак. Тут ты не прав. Индустрия это что? это то-же что и интернет скопище. Вот тут и возникает проблема. Последнее время у того положения вещей которе складывается появилось много противников. Я тоже против такого положения вещей. И еще 1000 человек. 1 glassy не сможет оказать влияния. 100000 смогут.
Тут все делают некорректные сравнения, но замечают их не всегда.
Ты (или еще кто) сравнивал его кад с Автокадом, который делали сотни человек несколько лет и естественно не в пользу када glassy. Тогда сравнивай кто кого забьет кит или слон, или еще чего. Но почемуто на рынке кроме фотошопа есь и фотопаинт и паинтшоп про и еще куча и продаются и покупаются, хотя все знают что фотошоп лучше. А еще на рынке есть куча дряни которая продается только потому что алтернативы нет, вот может кад glassy и будет альтернативой.
Насчет ругательства чужого так тон нужно выбирать и к glassy это тоже относится, и ругательство может стать критикой.
 

Tolik
27 Aug 2002 1:50 PM
Да в общем-то мне и угадывать не надо, какие у вас в регионе зарплаты. Если 2 года найти не можете - значит мало даете.

Чего тут не понятно
А что за регион такой бедный ?
 

dem
27 Aug 2002 2:31 PM
Дык не бедный он. Он нормальный российский регион, и на мерсах есть люди и с голоду помирают, всякое есть.
Ладно завязываем с соплями, но я считаю что 12 тыс $ за аналог 1С под SQL сервер, без всяких дурных конфигураций и встроенных языков, это хрошая цена. А вот с софтовыми компаниями туго. Остались либо 1С, который через час сдохнет на тех объемах, либо шарлатаны клипперники и фокспрошники которые работают за 5 тыс руб в месяц сидя дома с основной задачей сделать так что-бы завтра снова делать надо было. А приходят когда на фирму сразу пальцы веером типа мы работаем по принципу как тут перечисляли качество и т.п. и про стандарты от ИСО на софт вспоминают и т.п. а как просишь хоть один готовый проект так, извините мол отрасль спецефическая. Ха это торговля то специфическая отрасль.... Вот поэтому я и защищаю glassy, первый раз вижу чтобы человек сделал что-то.
 

Qrot
27 Aug 2002 2:49 PM
2dem: как эти 12 тыс считались то?
 

glassy
27 Aug 2002 2:57 PM
2Chkaloff:
первый аргумент -- единственный кад, идущий с обычным дистрибутивом -- QCAD, который, вообще говоря, очень далек от моего понимания када.
второ
 

dem
27 Aug 2002 3:00 PM
2Qrot не понял, как считались???? Из чего складывались?
 

glassy
27 Aug 2002 3:12 PM
2Chkaloff:
первый аргумент -- единственный кад, идущий с обычным дистрибутивом -- QCAD, который, вообще говоря, очень далек от моего понимания када.
второй аргумент -- имхо интерфейс не должен загораживать рабочее пространство.
третий аргумент -- аппаратное ускорение графики
четвертый аргумент -- использование базы данных для чертежа позволяет не заботиться о его сохранении
пятый аргумент -- большинство конструкторов не настолько знакомо с компьютером, чтобы использовать возможности того же автокада -- простейшая попытка найти массу тела упирается 1) жалобы на отсутсвие плотности для этого тела, или разных частей 2) невозможность наносить стрелки в разных плоскостях 3) куча времени тратится на этот и последующие "первый блин комом". имхо в данном случае положенное изображение отсканированное изображение чертежа с большой степенью прозрачности принесет намного больше пользы.
шестой аргумент -- мой шеф, которому нужны были конкретные шрифты, линии, размеры, етс, чего автокад не мог дать вплоть до 2002 версии.

На пока аргументов больше нет, хотя я был свидетелем lack of GDI resources у автокада после 5 дней аптайма.

По эксель останусь на своем -- сделать множественное выделение -- как два пальца об асфальт.

<raster> monkeyiq: re-inventing is FUN!

Кстати, у gimpa классные фильтры, а настоящий art tool делает вообще левая фирма... не помню сайта и названия. У них там какой-то плагин еще продавался за 300 уе...

И последнее -- релиз e17 откладывается на неопределенный срок. Интегрируется анимация, которую я неосторожно реализовал.
 

Tolik
27 Aug 2002 3:37 PM
2 dem

Плохая это цена, плохая, говорю как уже не одну заказную "торговлю-склад" сделавший и внедривший.

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

Посчитай хотя бы зарплату. Никак не уложишься. При том, что хорошие программисты - они за $100 работать не станут и за $200 тоже.

 

DemonZla
27 Aug 2002 3:47 PM
http://www.auditc.com.ua/Books/Verb-anticopy.htm
Прикольное изложение... :)
 

dem
27 Aug 2002 3:54 PM
2Tolik Я вообще последнее время ни в чем не уверен. Плохая, хорошая? Ты сам подумай та софтина которая сейчас там работает 90$ на рабочее место. Есть за 600$ за раб место, но достаточно убогие. Тогда вопрос: почему они есть??? тоесть такая убогость вообще и даром никому не нужна, это я тебе точно говорю разбирался. Значит берут? Закрытые (даже отчет не поменять), и убогие за 600$ с места???? А вокруг 1С.
Может и дешево это если писать с 0 и на 1 раз, но ведь это огромный рынок и причем не занятый (у меня много знакомых их от 1С тошнит уже, несколько свалили на самоделки под MS Access они и то лучше).
 

dem
27 Aug 2002 4:02 PM
2 Tolik раб мест не более 40
 

Qrot
27 Aug 2002 4:11 PM
2dem:
> не понял, как считались???? Из чего складывались?
а как еще понять можно? да, именно, каким образом ты получил твои $12 тыс.? почему именно 12 штук, а не 1, 5, 30 наконец?
 

dem
27 Aug 2002 4:34 PM
2Qrot понял (из чего складывалось, как я и сказал) ~40 раб мест. Есть софт за 90$ за место. Видели за 600$ (если честно то тот который за 600 хуже чем тот что есть за 90) посчитали убытки, посчитали возможную прибыль от расширения возможностей. вот и получается 12-15 тыс $ (ну точно не более 20 тыс).
 

Skull - sibskullmail.ru
28 Aug 2002 4:35 AM
/me сидит и зондирует рынок по поводу внедрения опенсоурсной учетной системы. После выборов надо будет пробить гранты в органах управления и выделение программеров в коммерческих фирмах. :)

2Tolik: и каков диапазон цен на такие самописанные бухгалтерии??
 

Tolik
28 Aug 2002 6:46 AM
$600 - это для тиражной системы, т.е. стоимость разработки разбрасывается на многих клиентов. Заказная всегда намного дороже.

Хотя, зависит от размера.

2 Skull - Последнее (правда на 200-300 пользователей) - обошлось примерно в 1.5 года до внедрения, полгода - год утряски после внедрения и что-то около $50000

Правда сейчас еще сотня пользователей в другом отделении - уже практически бесплатно (дописать пришлось только репликатор)

Что есть дешево, ибо заказывать такое в крупной фирме - будет раз в 5-10 дороже. Хотя есть авантюра, ибо мало кому удается разработка собственными силами, 90% таких проектов уходят в отвал, причем выясняется это, когда деньги уже потрачены.

А для 40 пользователей - все хуже, поскольку объемы работ в лучшем случае в пару раз меньше (в основном в области постановки задачи - как правило меньшая фирма проще), а мест меньше, соответственно - будет дороже на место.
 

eXOR - billgmicrosoft.com
28 Aug 2002 9:33 AM
2 Tolik:
Почему же люди никак не хотят понять что ширпотреб и заказная разработка - это совершенно разные вещи (в том числе и по цене)?
 

dem
28 Aug 2002 10:16 AM
2eXOR так ширпотреб и нужен, я тебе уже сказал я знаю еще минимум 10 фирм которые купят, ты только предлагай и купят.
2Skull я вот давно посматриваю в сторону GNUe, ты не смотрел?
 

Qrot
28 Aug 2002 10:35 AM
2dem: я малость не понимаю - 1С вроде бы и есть тот самый ширпотреб который всем так нужен, что с ним не так? по крайней мере наши бухгалтера сидят под ним и не жужжат вобщем то..
 

eXOR - billgmicrosoft.com
28 Aug 2002 12:20 PM
2 Qrot:
человек хочет кастомизированую вещь, по цене ширпотреба ;-)... ну что ж... можно ему пожелать удачи ;-).
 

Tolik
28 Aug 2002 2:31 PM
2 dem

Ты плохо знаешь "еще 10 фирм"
Или им нужно что-то типовое - и тогда оно наверняка уже на рынке есть (те же 1С, Галактика ...)
Или им нужно в общем-то "торговля и склад", но каждой своё ...
 

Skull - sibskullmail.ru
29 Aug 2002 4:32 AM
2dem: мы рассматривали этот проект, но ничего кроме лозунгов и кризиса анализа в команде я не наблюдал. Они уже несколько лет не могут довести до ума свой продукт (очень на Gnome похоже). Поэтому разрабатываем свой. Но без форсирования темпов.
 

eXOR - billgmicrosoft.com
29 Aug 2002 11:22 AM
2 Skull:
Еще одно правило в ОС разработках.. Счастье для разработчика, беда для пользователя - нет сроков сдачи :-).
 

Skull - sibskullmail.ru
29 Aug 2002 1:03 PM
2eXOR: это не для всех! KDEшники от сових планов практически не отступают, RedHat тоже. А всякие разгильдяи из Gnome (равно как и Windows) вообще не по плану работают.
 

glassy
29 Aug 2002 2:57 PM
А у некоторых проектов вообще релизофобия :) Болезнь страшно заразная... Сам вот заразился ужо....
 

Qrot
29 Aug 2002 3:02 PM
glassy, кстати о релизах - когда e17 намечается?
 

eXOR - billgmicrosoft.com
29 Aug 2002 4:15 PM
2 Skull:
KDE - это уже коммерческий продукт. OS коммерческий продукт.
 

eXOR
29 Aug 2002 4:49 PM
http://securitylab.ru/?ID=32456
 

Qrot
29 Aug 2002 5:32 PM
2eXOR: блин, да хватит уже одного кекса который тут свой секуритилаб рекламирует! ты-то чего?
 

Skull - sibskullmail.ru
30 Aug 2002 4:50 AM
2eXOR: ой, как интересно. И где он коммерческий? С какого боку, умник ты наш?! Ссылочки будь добр! :))
 

glassy
30 Aug 2002 7:22 AM
2Qrot:
<glassy_ape> 'e17
<e-bawt> If you cannot get e17 to work on your own, don't use it. If you have to ask questions about it, don't use it. It will be released when it's ready. It will be ready when it's released. There is no time estimate, so don't ask for one. It is for developers only.

:)
 

eXOR - billgmicrosoft.com
30 Aug 2002 9:06 AM
2 Qrot:
Хрень какая. Кто - то под моим ником написал ( 29 августа, 2002, 16:49 ).

2 Skull:
> И где он коммерческий? С какого боку, умник ты наш?!
Не выпендривайся. Можно было то же самое сказать, не задевая меня. Продукт коммерческий - т.к. Trolltech на нем делает себе рекламу, на нем себе рекламу делают дистрибуторы линукса, продукт который пишут в том числе разработчики, получающие за это жалование.
 

eXOR - billgmicrosoft.com
30 Aug 2002 9:07 AM
2 glassy:
Нахамили? :-).
 

Qrot
30 Aug 2002 10:55 AM
2glassy: т.е. можно расслабится... обыдна
 

glassy
30 Aug 2002 12:14 PM
2eXOR: Если бы Qrot защен на #e, я бы написал e-bawt: say Qrot about e17, и он бы ему нахамил ;)

2Qrot: планируются ebits2. Там будут куски кода моей последней задумки. Релиза пока не предвидится, хотя неделю назад, как появилась поддержка shaped borders, все говорили о близком релизе.
 

Qrot
30 Aug 2002 12:19 PM
2glassy: ну мы еще посмотрим, кто кому нахамит..
 

glassy
30 Aug 2002 12:46 PM
хаха, поспорим, забанят? ;)
Даже меня как-то раз без голоса оставили
 

Qrot
30 Aug 2002 12:58 PM
glassy: ну если даже такого отца забанили, то мне там точно делать нечего :))
 

dem
30 Aug 2002 4:12 PM
Опс пока читал Skulla с eXoRом перепутал. Извиняйте
 

Skull - sibskullmail.ru
1 Sep 2002 9:44 AM
2eXOR: насчет коммерческого KDE - а если в любой коммерческой конторе скали слово Linux - он тоже стал коммерческим? От этого слова создателем открытых некоммерческих дистрибутивов (не RedHat, а помельче) не холодно, не жарко. По твоим словам под это слово можно любую открытую программу подвести.

2dem: чего ругаешься - то?! Я что, предлагал ГОТОВОЕ решение? Мне вообще пока нечего предложить - пока все в разработке. А выставлять поделку совершенно неохота. Тем паче, если будет поддержка, то уже за деньги (возможно, уйду на вольные хлеба, если схема заработает).
Кстати, торговый учет (а точнее, логистика) - один из основных, но не единственный компонент корпоративных систем.
 

eXOR
1 Sep 2002 3:19 PM
2 Skull:
Linux - тоже коммерческая штука - IBM на нем зарабатывает.
 

Tolik
2 Sep 2002 6:38 AM
2 dem

500 000 / 30 = 17 000 в день / 40 пользователей = примерно 1 документ в минуту, в течении всего 8-часового рабочего дня без выходных и праздников ...
При номенклатуре 18000 позиций (ширпотреб, лекарства, что еще такую дать может?) - в каждом документе должно быть в среднем 5-10 позиций (да и по логике - странно будет, если от каждой позиции по 1 раз в день даже не продается) ...

Чего-то ты недоговариваешь. Или не 40 у вас пользователей или не полмиллиона документов в месяц.

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

А платформа - дык-ть полно их
Для табличек - DB2, Oracle, MSSQL
Для формочек - Delphi, VB

Рисуй, чего тебе не хватает ?
 

Nick - nkulykmail.ru
2 Sep 2002 9:28 AM
2 Tolik. Bravo!!!
 

Nick - nkulykmail.ru
2 Sep 2002 9:28 AM
Tolik, а у вас Labor Day не празднуют разве?
 

DemonZla
2 Sep 2002 10:04 AM
Nick у нас празднуют день сисадмина :))
 

dem
2 Sep 2002 10:21 AM
2 Tolik Ха я такими-же расчетами тетеньку которая 1С рекламировала подловил у нее 1 док в секунду получался. Нет есть еще 20 ноутбуков софт на которых менятся не будет, есть еще внешние заказчики. И кроме того 500000 это пик в праздники, а товары это бытовая химия, косметика, вплоть до презервативов. А там расклад такой - серия шампуней с запахом калины, малины и так до запаха носков Ж-) и это надо учитывать как разный товар.
Сам писать полностью не буду, мне за это вообще ничего не заплатят (поэтому и ушел я из этой дуратской фирмы) а если чего слетит так еще по шее надают - век не расплатишся. Мы и так многое сами ваяли я на InterBase + Delphi + Python логистик наш в Аксессе отчеты для всей фирмы делал, но исходные данные в dbf причем очень нереляционной. Вот а DB2 это платформа, но нужны заготовки. Т.к. таблицы нужно проектировать и очень серьезно, вот за эту работу 12 кусков и отвалят + потом поддержка за отдельную плату и т.п. А вообще вспомните с чего начинался разговор. С того что очень мало настоящих разработчиков т.е. тех которые что-то сделали сами, а не взяли полуфабрикат и доделали там или сям. А glassy - первый (ну может и не первый, но всеже) живой разработчик с своим софтом которого я лично увидел.
 

Qrot
2 Sep 2002 10:22 AM
2Nick: ты расскажи, что это такое и с чем едят... может и запразднуем :)
 

glassy
2 Sep 2002 10:22 AM
2Tolik:
практика на 3-м курсе... понял для себя, что никакие фирмы, никакие цены, никакие гуи, никакакие базы не гарантируют нормально работающего программного продукта<, если программисты ограничены во времени>. То есть он будет нормально работающим, но лишь до порядка 3000 наименований товаров.
 

Tolik
2 Sep 2002 10:40 AM
2 dem
Пик в праздники, применительно к месячному количеству фактур - это как ? А вообще - если заявленные обороты имеют место быть - забудь про 12 тысяч. Это есть соизмеримо с тем, что я последний раз делал с названным тебе бюджетом и считаю, что это весьма и весьма дешево.рассчитывай минимум на $50000, реально - на $100000 - $200000. Что, впрочем, для фирмы с такими оборотами - гроши

Предположим, что на хорошей системе вы просто сэкономите 10 секунд на вводе каждой фактуры

10 * 500000 = 5 000 000 секунд
83333 минут
1388 часов
173 рабочих дня
8.5 человеко/месяцев * $300 (зарплата с налогами) = $2550 в месяц прямой экономии = $30 600 в год.

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

И даже её хватит, чтобы окупить за 3 года $100 000 вложенных в разработку.
Вы, ребята, сами себя грабите, пытаясь сэкономить

2 glassy
Ничего ты не понял. Коммерческая разработка отнюдь не отрицает сроков. Более того, часто идет прямой обмен сроков на деньги - можно быстро, но дороже, можно дешевле - не долго.

 

glassy
2 Sep 2002 11:10 AM
2Tolik: база данных (на делфи), склад с книгами, была перекуплена у Кноруса, но это было давно.

То есть, более сырую, но подороже? ;)
 

Qrot
2 Sep 2002 11:47 AM
2glassy:
>То есть, более сырую, но подороже? ;)
видишь ли, людям не нужен софт сам по себе, им нужна функциональность и немедленно. скажем, если поставить новый софт на рабочие места в сентябре, то компания сможет воспользоваться новой технологией первой на рынке и существенно удешевить свои услуги в сравнии с конкурентами, а значит урвать свою долю рынка. соответсвенно, считаем затраты на правку багов в софте после установки (а это сопровождение, вобщем то, оно в любом случае будет) и потери, в случае если софт будет установлен, скажем, в январе. почему то, потери всегда оказываются значительно большими... поэтому компании согласны на сырой софт, но дороже и немедленно.
 

glassy
2 Sep 2002 12:13 PM
2Qrot: не забудь, что сопровождение и правка багов в этом случае будет делаться на сырой проге, которую могли бы в корне изменить до января. Изменение каких-то структур могло бы повысить производительность, ан нет, поздно уже... вот и ругаются потом все от мала до велика :)
 

Tolik
2 Sep 2002 1:58 PM
Ты так и не понял, что люди, считающие деньги - считают не так, как ты. Это все к разговору о профессионализме. И отличие его от любительщины.

А так - можно сидеть и оптимизироваться до бесконечности ...
 

Qrot
2 Sep 2002 1:58 PM
glassy: ты, похоже, не понял - это не волнует никого. по крайней мере из тех кто платит
 

glassy
2 Sep 2002 2:22 PM
cool, оказывается, что тех, кто платит, это не волнует, а тех кто _не_ платит, те как раз-таки и обеспокоены и стабильностью, и производительностью :)

Момент истины, блин ;)
 

Tolik
2 Sep 2002 2:38 PM
На свете ни единому уму
Имевшему учительскую прыть
Глаза не удалось открыть тому,
Кто сам не собирался их открыть
(с) И. Губерман

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

... чего стараться, пусть жизнь осудит ...
(с) В.С. Высоцкий
 

eXOR - billgmicrosoft.com
2 Sep 2002 2:44 PM
2 Tolik:
Ай да Tolik, ай да ... молодца. Не ну как точно и четко ситуацию обрисовал, я аж залюбовался ;-).
 

glassy
2 Sep 2002 3:05 PM
я бы при мне не стал цитировать Губермана :) А то я тоже щас начну, про гребаный совок, например ;)
 

Tolik
2 Sep 2002 3:10 PM
А чего ты нам, капиталистам про совок расскажешь ?
Нам оно интересно ? Вот, кстати, про открытость исходников

Во имя класса-гегемона
Чтоб неразрывно правил он
Во всякий миг доступен шмону
Отдельно взятый гегемон

:-Р
 

Губерман
2 Sep 2002 10:10 PM
Моей бы ангельской державушке -
Два чистых ангельских крыла;
Но если был бы хуй у бабушки,
Она бы дедушкой была.
 

glassy
2 Sep 2002 11:27 PM
Как будто это я выбрал MSSQL, Delphi и VB. Как будто это я руководитель конторы, делающей ПО учета движения товаров. Как будто мне предстоит возить своей мордой об клиентов. Согласен? сделать трудно? особенно если лабать на аксесе, не зная VBA. Очччень трудно...

Взяла знакомая фирма себе сканер штрихкода, и какое-то ПО от 1С. Так эта эпопея согласования сканера с базой растянулась очень надолго. Ради интреса я поискал дрова в инете. Они продавались!!! За 300 убитых енотов и выше! Я валялся в истерике. Несколькими часами ранее мне этот сканер удалось завести с пол-оборота без особых приблуд -- в окне гипертерминала как модем (этот модем отлично передал даже все штрихкоды с коробки из-под P-III). Разумеется, я отношусь с большим скептицизмом к выражениям насчет сроков, или сложности? или стоимости. Я привел уже два примера: свой кад (против скажем SmartSketch) и файловый менеджер (более функциональный? чем наутилус или джобсовский эксплорер).
Я считаю? что приложение, требующее некоторого языка, не должно разрабатываться дольше, чем на Си (думаю, это логично). Твое плохое отношение к своей работе я могу связать с плохим планированием, недостатком опыта программистов либо необходимой им документации, плохим документированием (стилем) самого кода, отсутсвием необходимых специалистов в соответствующей узкой области, недостатками работы команды. Думаю, конторы вроде твоей тоже слишком часто хотят съэкономить в ущерб себе.
В моей жизни было 3 базы на MS Access. Первая -- второй курс, сосед попросил увеличить разрядность, а потом исправить какую-то ошибку, которую он сам внес в код. От второй базы (курсовая по БД) потенциальный заказчик отказался, потому как ценообразование там делалось как я привык из первой базы. С третьим своим клиентом разошлись по-мирному (4-й курс). Он был виртуозом в экселе, и в аксессе таблицы не могли иметь функциональности того же порядка. Карьера фрилансера или специалиста по базам данных не сложилась, к счастью.
 

Qrot
3 Sep 2002 2:15 AM
и к чему был этот весь такой вопросительный словесный понос? :)
 

Tolik
3 Sep 2002 7:02 AM
2 glassy

Ты сказал
(с) И. Христос

Дальше очень живо представляется пользователь, переносящий коды из окна гипертертерминала, к себе в 1C. А ты - ты задчу решил, только не пользователя (чтобы в его БД коды попадали), а свою (показал, что ты крутой, код в гипертерминале увидел).

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

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

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

Кстати, о плохом отношении к собственной работе и плохом стиле кодирования - это ты кому?

 

glassy
3 Sep 2002 7:26 AM
2Tolik: да уж.... если ты не можешь оценить объем работы для написания небольшой программы, посылающей все входящие в сом1 цифры и буквы активному окну, *о чем вообще может идти разговор*?
 

glassy
3 Sep 2002 7:39 AM
В конце концов я им показал, что сканер вполне рабочий, этого было достаточно на тот момент. Никаких планов на продажу курсовой я также не строил -- я не настолько наивный, и уж тем более обижаться...

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

eXOR - billgmicrosoft.com
3 Sep 2002 9:43 AM
2 Tolik:
Хех... как glassy ничего не понимает и не хочет понимать в разработке за большую деньгу, так и ты не понимаешь и ничего не хочешь понимать в OS разработке
 

dem
3 Sep 2002 9:49 AM
2glassy & Tolik Разговор глухого со слепым.
 

dem
3 Sep 2002 9:52 AM
2 eXoR Вот-вот точно Tolik - бизнесмен и прав как бизнесмен. glassy программер, причем с дизайнерским уклоном, ему-бы все красиво и правильно, он готов год не есть толькоб правильно сделать.
 

Tolik
3 Sep 2002 10:01 AM
:-)))
Ага ... Развлекаемся ...

2 Glassy
Живо себе представляю запуск перед 1С "отдельной программы", которая шлет коды во все активные окна ... Интерсное решение, нетривиальное. С высокой степенью полезности.
Для этого - и просят деньги за драйвер, который пошлет куда надо, что надо, КОДГА надо и не будет создавать проблем всю оставшуюся жизнь.

 

dem
3 Sep 2002 10:09 AM
2 Tolik а это делается достаточно просто. Програмка типа АВП Монитора висит себе и не жужжит. Ежели сканер там чего хочет, так она проеряет заголовок активного окна, и если это 1С бла,бла,бла, то ищет контрол с именем бла,бла,бла (и типом,бла,бла) после чего посылает ему SendKeys. У меня так DOS програмки самоиграются (люди когда видят как почта сама набирается, аж дар речи теряют)
PS: Кстати под DOS так и не смог заставить писать и по русски и по английски (SendKeysами) если кто подскажет....
 

Tolik
3 Sep 2002 10:13 AM
:-)))

забавно ...
И давно я бизнесмен ?
Я ИТ-менеджер, а своим бизнесом я не занимаюсь.

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

dem
3 Sep 2002 10:17 AM
2Tolik ИТ-менеджер это уже управленец, а там уже больше экономика. Так что все одно.
PS: Кстати ИТ-менеджер это не плохо, наша страна какраз и страдает из-за придурков заставляющих траву красить.
 

Tolik
3 Sep 2002 10:24 AM
2 dem

А дальше начинается секс ...
С каким именем контрол ? Что будет имя контрола ?
Класс окна ? Чушь
Класс Окна + DlgId - тоже чушь, может повториться
В какой момент посылает ? А если оно там в этот момент не нужно ? Пишем API твоей программки для управления?
А если и контрола там нет ? (и не нужен он там, кому интересны цифры штрих-кода, надо их поискать в БД и вывести наименование товара). Кто же так пишет ???
И зачем SendKeys ??? Для этого есть WM_SETTEXT

В отличие от некоторых, глубокомысленно рассуждающих о предмете, "бизнесмен" знает - правильное решение - это ActiveX (доступный из 1С), который имеет методы, выдающие значение по запросу 1С и/или экспортирует Event`ы, уведомляющие клиента о приходе кода. Кстати, его написать ничуть не сложнее, чем ту программку.

 

glassy
3 Sep 2002 11:25 AM
Программисты, реализовавшие ActiveX, были приставлены к стенке и застрелены... К чему бы это?... ;)
 

Tolik
3 Sep 2002 11:32 AM
Плохо реализовали
Не умеют значит

Ну и что ?
 

glassy
3 Sep 2002 12:18 PM
FILE *f;
f = fopen("/dev/com1", "r");
for(;;){
char bc[20];
char buf[4096];
char name;
int res;

bc = fgets();
sprintf(buf,"/%s/name",bc);
E_DB_STR_GET("books.db", buf, name, res);
if(res) printf("%s\n", name);
IF_FREE(name);
}

POSIX рулит! ;)
 

dem
3 Sep 2002 12:30 PM
2Tolik насчет WM_SETTEXT я уже написал что я лично автоматизировал так DOS программы, и вообще шкуру с кошки... Ж:-)
Насчет ActiveX ты и прав и не прав. Ты сам говорил что лучше быстрее. А тут забыл что данный ActiveX прийдется привязывать к конфигурации, да еще и еженедельно т.к. фирма - поставщик конфигураций у нас меняла их минимум 2 раза в месяц (это 1С зарплата-кадры)) Так-что я предложил рабочее решение, хотя и ты тоже, не отрицаю, но учти мы в форуме и придраться можно к чему хочеш. Ж:-)
 

Tolik
3 Sep 2002 12:41 PM
2 glassy
Не понял, что ты хочешь показать ? Тот же код будет почти аналогично выглядеть и под Windows. Только как оно узнает, что надо что-то в еонтрол класть и в какой ?

2 dem
Куда надо привязывать ActiveX ????
К нему надо обращаться из кода скриптов (или как это у них там в 1С называется). Если ты создал свою форму, умеющую работать со сканером - вот в ней и обращайся.

А если это сделал поставщик ПО - то оно у него все там и есть
 

glassy
3 Sep 2002 1:27 PM
2Tolik: а ты не подумал о том, что форм для ввода кода может быть несколько? Кидание в конкретный контрол есть зло (если говорить о простом сервисе). SendKeys -- вполне приемлемая альтернатива. Например, надо набрать ISDN код в ворде или экселе (он отличается от товарного штрихкода последней цифрой). С другой стороны, сочетание форм ввода и пользователей подразумавает нажатие на кнопку ОК мышью ;), ну так раз уж мыша в руке, почему бы не тыкать в editbox, куда нужно поместить код.

Кстати, я не думаю, что кто-либо отважится написать почти аналогичный код под Windows. Тем более с такими же возможностями для ipc. Хе-хе, мне надо было его на перле написать ;)
 

Qrot
3 Sep 2002 1:34 PM
все, glassy, теперь мы точно знаем - ты круче всех крутых! смиренно склоняем головы, посыпая их пеплом :)))
 

glassy
3 Sep 2002 1:37 PM
ах, какой же я крутой! :P~
 

glassy
3 Sep 2002 1:44 PM
2Tolik: прошу прошения, сразу тебя не поправил... "пошлет куда надо, что надо, КОДГА надо". Итак "куда" -- куда оператору надо, согласен? "что" -- вариант только один -- ракодированная последовательность букв и цифр. Как я уже сказал, сканер работает как танк, играючи выдал все строки, написанные под всеми штрихкодами на коробке из-под PIII. "Когда" -- разумеется, когда оператор второй раз нажал кнопку на сканере (первый раз -- для считывания).
 

glassy
3 Sep 2002 1:48 PM
Настройка сканера под большое железо делается с помощью инструкции -- там штрихкоды для разных плаформ, портов, bitrate и тп. Просто сканируешь им нужные настройки, и он пищит в ответ.
 

dem
3 Sep 2002 2:38 PM
2 Tolik (12:41) вот скрипты и будешь переделывать 1раз в неделю т.к. фирма их "обновляет" еженедельно. А если попросишь фирму включить твой кусок кода - далеко пошлют.
Ты честно признайся ты из-за границы???? А то я тут с РТО спорил, так мы оба пришли к мнению, что русскому хорошо, то немцу смерть и наоборот. Ты всевремя подразумеваеш рвночные отношения и прочее, а я всеремя ожидаю что меня (как бы это полегче выразиться) "надуют". Кстати если РТО читает это - привет ему. РТО был последней каплей из-за которой я свалил из той фирмы.
 

dem
3 Sep 2002 2:38 PM
2 Tolik (12:41) вот скрипты и будешь переделывать 1раз в неделю т.к. фирма их "обновляет" еженедельно. А если попросишь фирму включить твой кусок кода - далеко пошлют.
Ты честно признайся ты из-за границы???? А то я тут с РТО спорил, так мы оба пришли к мнению, что русскому хорошо, то немцу смерть и наоборот. Ты всевремя подразумеваеш рвночные отношения и прочее, а я всеремя ожидаю что меня (как бы это полегче выразиться) "надуют". Кстати если РТО читает это - привет ему. РТО был последней каплей из-за которой я свалил из той фирмы.
PS: мне ZDNET во что выдал:
Microsoft VBScript compilation error '800a0411'

Name redefined

/_ZDNet.Include/Page Layout/Bottom Panel/Menu.Inc, line 7

DIM RS_Bottom_Menu
----^
 

DemonZla
3 Sep 2002 3:41 PM
Гыгы... программеры...
glassy, спасибо за исходник, авось пригодится... :))

PS. И всё таки в linux гораздо легче программировать, чем в этом Windows с его полузакрытыми API...
 

glassy
3 Sep 2002 11:21 PM
DemonZla: ага, читай вместо мантр :)))
 

Qrot
4 Sep 2002 12:46 AM
2glassy: а помогает? :)
 

Tolik
4 Sep 2002 7:06 AM
2 dem
Я, собственно, из Расеи, и даже не из Москвы.
Законы экономики, они, как и закон Ома, действуют везде одинаково, а кто не верит - пусть сунет палец в розетку. Так что привет не PTO, а тебе.

2 glassy
Известно какому программисту завсегда API мешает ... :-Р
Мне так всегда хватало документированного.

Кстати, приведенный тобой интерфейс тривиально реализуется на Win2000 и даже патчить ничего не надо, никаких библиотек. Все есть, все документировано.
 

glassy
4 Sep 2002 8:04 AM
Мне позавчера так смешно стало. Захотел hibernating включить в ХП у соседского компа. Hibernating не работает -- ругается на запущенный terminal services. И справку -- это дескать та самая вещь, которая позволяет нескольким пользователям работать одновременно (это уже само по себе было смешно -- одна фича мешает другой). Дальнейшие раскопки привели к "terminal services(RPC)". И что же получается? Пользователи общаются с оконной подсистемой через RPC. Кто не знает, эта фича (remote procedure calls) от соляриса, работающая на tcp/ip. Ну собственно предстала картина немного модифицированных иксов (поддержка нескольких пользователей), работающих на модифицированных сокетах.
Прошу прощения у спецов за взгляд с неожиданной стороны ;)
 

dem
4 Sep 2002 9:30 AM
2Tolik ну тады ой. Просто ты рассуждаешь так, будто всегда за деньги договориться можешь. И никогда не видел руководителей, которым ты уже объяснил, что эффективность повысится, а они все равно отказываются т.к. твоя система им воровать не позволит. Или не было, так что договорился на 1 сумму, сдал работу, получил меньше раза в два, три. А юриста ты нанять тоже можешь?
 

glassy
4 Sep 2002 10:11 AM
2Tolik: понимаешь, мне документации, может быть, и хватит... Мне места не хватит на рабочем столе... не будет хватать утилит less, grep, wc, моего любимого редактора vim, нормального cvs с ssh... И уж точно мне будет сильно не хватать линуксовых либ.
 

glassy
4 Sep 2002 10:13 AM
робастных таких либ ;)
 

eXOR - billgmicrosoft.com
4 Sep 2002 12:28 PM
2 glassy:
CVS - рулИИИИззз и фарева. Как я обожаю CVS. (это все вполне серьезно), вчера он мне съэкономил часа 3 рабочего времени. "Уга тавагищи!". :-).
 

Tolik
4 Sep 2002 1:24 PM
2 glassy

Ты как всегда ни хрена в TS не понял. Что одна фича мешает другой - а подумай, что будет при hibernate с терминальными пользователями ? Можешь предложить иное решение ?
насчет "немного модифицированных иксов" - или ты ни малейшего представления не имеешь как работают иксы, или - как работают TS. RTFM ?
 

Ron - rodionlenta.ru
4 Sep 2002 2:13 PM
2 Tolik: А почему в XP "Fast user switching" возможен только при включённом "Welcome screen"? Почему "Lock computer" можно делать только когда машина зарегистрированна в домене? Почему Task Sheduler не запускает задание под аккаунтом пользователя без пароля? Имхо, в XP просто начался переход количества фич в качество, когда они начинают друг на друга влиять непредсказуемым образом... :-(
 

glassy
4 Sep 2002 2:30 PM
2Tolik: как работают иксы, я знаю; как работает RPC -- тоже знаю.
 

glassy
4 Sep 2002 2:32 PM
трехсотник однако ;)
 

DemonZla
4 Sep 2002 3:43 PM
dem, походу zdnet на винде работает... айяйяй нехарато...
килять будум... :))
 

Andrei - pliancyyandex.ru
4 Sep 2002 9:16 PM
Подскажите как добраться до файлов Win XP, который установлен на винте, но не работает (т.е. он находиться на slave-винчестере, а мастером выдает ошибку при загрузке). На мастере установлен тоже XP, а при обращении к директории на слэйве - доступ закрыт.

 

Qrot
4 Sep 2002 10:07 PM
2Andrei: http://www.sysinternals.com/ntw2k/freeware/ntfsdospro.shtml ставишь дос, эту шнягу - и вперед. на том же сайте есть драйвер под win98
 

Qrot
4 Sep 2002 10:09 PM
2Andrei: либо, если с самой ХР все ОК, но бутрекорд на диске, то попробуй подредактировать c:\boot.ini так что бы грузилась ХР со слэйва
 

RIK
4 Sep 2002 10:11 PM
2 Andrei
А права администратора у тебя есть? Добавь себе права доступа на соответствующую директорию.

2 glassy
RPC - это не фича "от Соляриса". Это все равно, что сказать, что dll - это фича от Windows. На самом деле различные реализации RPC были задолго до Соляриса (как и dll - до Windows).
Кстати, в приведенном тобой фрагменте кода полно ошибок.

2 Tolik
Ты во всем прав (можно на ты?). glassy, похоже, просто слишком молод. Он неплохой программист (людей, способных сделать что-либо самостоятельно в природе не так много) - ну так остепенится еще :-)
 

Qrot
5 Sep 2002 1:09 AM
2RIK: точно :) про админа я забыл напрочь :)
 

Tolik
5 Sep 2002 6:43 AM
2 Ron

>А почему в XP "Fast user switching" возможен только при >включённом "Welcome screen"? Почему "Lock computer" можно >делать только когда машина зарегистрированна в домене?

Дык, это фичи из разных назначений. Fast Switching - это для несетевой конфигурации (аналогом LockComputer является тот самый Welcome Screen, не смотрел, но подозреваю, что и работает он на десктопе WinLogon). Тяжело, однако, сделать систему защиты NT понятной домашнему пользователю. Наверно все оттуда - ищут как все сделать не особо его запугав.

>Почему Task Sheduler не запускает задание под аккаунтом >пользователя без пароля?

Гы, правда не дает. Бага это.
 

glassy
5 Sep 2002 7:20 AM
2RIK: уговорил, RPC -- это фича от сана :)
А кусок кода -- proof of concept, не более. E_DB -- надстройка над db1, скачать надо буит, остальное исправляется быстро.

Кстати, та девушка, лисп гуру и автор evidence, опять удивила. Она на порядок креативнее меня. Ради избавления от зависимостей реализовала свой iconfactory...
 

eXOR - billgmicrosoft.com
5 Sep 2002 10:56 AM
2 Andrei:
Взять линух, скомпилять с поддержкой NTFS на r/w, записать на дискету и с нее загрузиться. И править сколь душе угодно.
 

glassy
5 Sep 2002 12:23 PM
2eXOR: а r/w уже есть? или он есть неофициально? :)
 

Qrot
5 Sep 2002 12:34 PM
glassy: экспериментально. но ЛОР флейм по этому поводу в десятке висит, почитай там
 

glassy
5 Sep 2002 3:10 PM
2Qrot: я туда не хож...
 

Andrei - pliancyyandex.ru
5 Sep 2002 8:19 PM
2 Rik: А как добавить права доступа на эту директорию в XP?
 

Andrei - pliancyyandex.ru
5 Sep 2002 8:37 PM
Есть рабочий XP. На втором винчестре (слэйв-NTFS) стоит ОС - тоже XP. Проблема заключается в том, что учетная запись администратора не дает прав на доступ к файлом учетной записи "второй" системы и отвечает, что доступ закрыт. Подскажите плз решение этой проблемы или укажите форум, где могут помочь. Спасибо, Андрей.
 

Andrei - pliancyyandex.ru
5 Sep 2002 8:37 PM
Есть рабочий XP. На втором винчестре (слэйв-NTFS) стоит ОС - тоже XP. Проблема заключается в том, что учетная запись администратора не дает прав на доступ к файлом учетной записи "второй" системы и отвечает, что доступ закрыт. Подскажите плз решение этой проблемы или укажите форум, где могут помочь. Спасибо, Андрей.
 

RIK
5 Sep 2002 9:54 PM
Andrei
В эксплорере right click на нужную директорию->Properties->Security->Add

Или действительно sysinternals, как Qrot сказал.
Спрашивать можно в форуме forum.ixbt.com - там быстро ответят.
 

Andrei - pliancyyandex.ru
5 Sep 2002 10:07 PM
RIK, у меня в XP нет этих меню, которые ты описал. Я это считаю существенным недостатком XP по сравнению с 2000. А у тебя есть? А какая у тебя версия?
 

eXOR - billgmicrosoft.com
6 Sep 2002 9:20 AM
2 glassy:
Дыкть experimental смотри хоть иногда :-). Ужо несколько лет как есть (правда для NTFS4, а в 2.4 не помню с какого и для NTFS5) правда думаю со сжатыми каталогами работать не будет.
 

RIK
6 Sep 2002 10:23 AM
2 Andrei
В эксплорере Tools->Folder options->View убрать галку с Use simple file sharing.
 

eXOR - billgmicrosoft.com
6 Sep 2002 2:11 PM
2 glassy:
Cчас выяснилось, что работает оно (rw) от раза к разу... видимо что - то я случайно сделал, что у меня на NTFS5 все заработало, а вот чел у себя на том же самом повторить не может...
 

Qrot
6 Sep 2002 3:08 PM
2eXOR: а не страшно на острие прогресса сидеть? :))
 

eXOR - billgmicrosoft.com
6 Sep 2002 3:42 PM
2 Qrot:
А... пох... че на домашней машине может ценного быть? Все что нужно сбэкаплено или в дитрибах лежит... так что пофигу.
 

glassy
7 Sep 2002 9:21 AM
У меня самое ценное -- дрова для момеда под 2.4 :)
 

glassy
8 Sep 2002 7:46 AM
Винда -- отстой! Этой ночью доки на video4linux почитал, там все просто как 2х2. Linux -- это очень логичная и стройная система, чего не скажешь о танцах с бубном вокруг МС.

Отморозки, конечно, мне возразят, но я не думаю, что они разбирались в документации на capture devices в обоих системах.
 

glassy
8 Sep 2002 7:49 AM
Нижесказаное также касается msdn
 

eXOR - billgmicrosoft.com
9 Sep 2002 7:53 PM
2 glassy:
Винда маздай, все бабы... ну это в общем из другой оперы...

> дрова для момеда под 2.4 :)
Выкинь, покупай соплю на 100 мегабит. Поймешь в чем кайф.. у меня был, пока жил там где такие продаются, а сейчас район не благоприятствует. Теперь вообще дома инета нет. Только на работе остался.. правда это теперь уже не очень - то и напрягает... а по началу было...
 

glassy
10 Sep 2002 7:15 AM
2eXOR: у нас компания кабельного тв провайдер, так что без проблем вобщем-то, а диалап вообще дешевый. Но сам понимаешь, с моим винтом 10Г в инете делать нечего :)
А про видео -- классно, доку от Кокса почитал, там оказывается, сразу после ioctl работа с прерываниями, то есть расстояние минимальное, никаких тебе vxd и прочей лабуды.
 

Alexey
10 Sep 2002 8:27 AM
Добрый день тут.
Давно не заглядывал в это обсуждение.
Так вот читал я читал и вижу.
От glassy следующее
> FILE *f;
> f = fopen("/dev/com1", "r");
> for(;;){
> char bc[20];
> char buf[4096];
> char name;
> int res;

> bc = fgets();
^^^
> sprintf(buf,"/%s/name",bc);
> E_DB_STR_GET("books.db", buf, name, res);
> if(res) printf("%s\n", name);
> IF_FREE(name);
> }
> POSIX рулит! ;)
Ты же bc как массив обявил, так какого ты потом ему указатель на другую область памяти присваиваешь? Да и прототип функции fgets выглядит по другому. Или это был не Си, а что-то другое? И почему name объявленная как char потом выводится как %s? Про остальное просто помолчу.
Очень интересно было прочитать высаазывания про Perl, можте на нем glassy написал бы корректнее?
Вы извините, я просто как программист, может и не стоило лезть...
 

Alexey
10 Sep 2002 8:52 AM
То glassy:
Почитал чуть дальше, оказывается это был proof fo concept. Тогда чем это отличается от гипертерминала, до рального кода этому куску так же далеко.

По поводу видео. Не понятно желание человека работать с прерываниями под многозадачной системой напрямую. Я тут постоянно вижу высказывания людей, утверждающих, что glassy хороший программист, только молодой. Так вот у меня очень большие сомнения по поводу хороший, пока что заметна только вопиющая безграмотность во всех темах, которые затрагивались в данном обсуждении. А то что молодой конечно и так всем видно, хотя я и сам не старый.
 

Alexey
10 Sep 2002 8:54 AM
Зря glassy отказался от работы в банке, пусть и за 150$ за полгода многое бы понял (если бы раньше не выгнали, застав за поголовной сменой операционок на ASP Linux :) )
 

glassy
10 Sep 2002 11:16 AM
2Alexey: я плохого мнения об асп линуксе. То ли дело альтлинукс!...
про bc -- ты это конечно правильно заметил... Рад за тебя. Просто это очевидные вещи. Дело быол так -- я давно не пользовался fgets(), помнил, что дается указатель на буфер, число байт, указатель на файл, но было лень это писать, да и с порядком аргуметнов мог напортачить. В итоге оставил его без параметров, они очевидны, а чтобы подчеркнуть, что я работаю с bc, написал именно так. Как ты наверняка знаешь, fgets возвращает либо buf, либо . Понимаю, если бы я free(bc) поставил.

про name: это да, надо char*name.

про остальное: не молчи, прямо скажи ;)

Реальный код может отправлять полученную инфу в нужный пайп. Для юниксов этого ipc достаточно.

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

Про видео. Боишься работать с прерываниями под многозадачной системой? Ты наверное один из тех, кто кричал о переполнениях буфера при моей работе со сторками в моем каде.
Просмотри, если желаешь :)
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/engy/one/eng ycad/

Далее про видео. Апи реализуется через функцию ioctl. Например, можно сказать тюнеру настроиться на определенную частоту, или девайсу мапить изображение PCI-to-PCI в видеокарту, или запросить/задать параметры тюнера. Кадры, кстати, отлично захватываются функцией mmap(), что удобно. Про прерывания -- так или иначе, программист с прерываниями не работает. Но может. Прерывание говорит обработчику (точнее, списку обработчиков) о готовности кадра. В любом случае, этому документу от Кокса два года, наверняка схема действия уже другая.

Ну и пара скриншотов напоследок :)
http://glassy.to.kg/gallery
 

Alexey
10 Sep 2002 12:07 PM
To glassy:
Дело в том, что после того, как ты обявил bc как массив, присваивать ему что-то (я имею в виду выражение типа bc = ...) бессмысленно, т.к. в лучшем случае он будет указывать на тоже самое (как в случае с bc = fgets(bc, ...)), а в худшем, он уже не будет указывать на ту память которая для него выделена на стеке компилятором (те самые [20]). Тем более, если fgets вернет , bc в принципе не может быть нулем, т.к. расположен на стеке.

По поводу, остального писать не буду так как имелось в виду полное не соответсвие предложенного кода реальной задачи. Нельзя ее сводить к тому что написано и говорить, вот это все что надо. Реальный код будет больше хотябы из-за того, что в нем будут отсутствовать такие константы как "books.db" (хотя присутсвовал на дипломе где было в исходниках прописано "C:\...", что весьма удивило комиссию), да и привязка программы которая работает со сканером к конкретной СУБД тоже вызывает сомнения, скорее уж она должа просто отсылать считанный код (т.е все что E_DB_ и т.д. как раз лишнее).
А что значит выражение "госбанк", честно говоря давно не встречал, если подразумевается ЦБ, так туда как раз не лишне сходить. А работа в банке позволяет познакомится с большим количеством ПО, которое написано разными людьми, часто не очень дружит с конкретными операционными системамии и другими программами. Заодно много различных форматов данных и т.д. Все это позволит в дальнейшем терпимо относиться к другим программам и кстати более уважительно относиться к программистам из MS, так как их программы сделаны гораздо более грамотно.
И еще работа в банке позволяет познакомиться с чувством ответсвенности за свою работу, ибо оптимизировать ядро своей программы и его структуры данных можно долго, но если в результате такой оптимизации не будут проведены нужные платежи, или наоборот проведены не нужные, оптимизировать захочется еще не скоро.
А где у меня был замечен педантизм? и преклонение?
 

Alexey
10 Sep 2002 12:13 PM
Про кад ничего не скажу, т.к. считаю что такя программа должна была полезна во времена Лексикона, а не сейчас, т.к. конкурировать с современными кад системами достаточно бессмысленно. А если хочется сделать именно кад, то можно поискать заказчика, который предлагает создать систему в которой в качестве втроенного редактора потребуется нечто подобное.
У меня был подобный случай в практике.
Правда заказчик может захотеть всего навсего импорт из AutoCAD :)
 

glassy
10 Sep 2002 12:34 PM
да, ты и в самом деле немного опоздал :) Про заказчиков тут уже говорилось ;)
Конкурировать, кстати, мой кад вполне могёт. Правда, только среди кадов с freebsd/gpl лицензиями.
 

Alexey
10 Sep 2002 12:47 PM
To glassy:
Читал про заказчиков, читал, но ты сам снова про свой кад вспомнил.
 

Alexey
10 Sep 2002 12:48 PM
To glassy:
> Правда, только среди кадов с freebsd/gpl лицензиями.
Ну нельзя так говорить.
Представь, что подходишь к конструктору и говоришь: "Хочу вам предложить программу которая успешно конкурирует с программами с freebsd/gpl лицензиями"
 

glassy
10 Sep 2002 2:41 PM
к конструктору не подойду (если честно, не имею особого желания к кому-либо подходить вообще), а вот студент, который не может $300+700$ за win* и AutoCAD LT выложить, вполне может на меня выйти. Например, на freshmeat-е уже трое подписались на новые релизы.

По-моему необходимо разрабатывать приложения *правильно*. Разумеется, можно и не так, в этом есть тонкая грань между правильно/неправильно. Отношения такие же как иметь носки с дырками или без. Важно не экономить ни время, ни внимание, ни средства ради поддержания правильности (в обоих значениях:)). Или вообще абстрагироваться и иметь носки не только целые, но и чистые, стильные, легкие, подходящие по цвету и т.п. Мда... Знаю, что рискую быть непонятым...
 

Alexey
10 Sep 2002 3:20 PM
Что имелось в виду под "рискую быть не понятым".
Проблема наверное в том, что даже студенты предпочитают иметь грязные носки модели "AutoCAD", а не чистые стильные, но в которых приходится хромать.
 

eXOR - billgmicrosoft.com
10 Sep 2002 3:22 PM
2 glassy:
Right thing - это очень субъективное понятие.
 

Alexey
10 Sep 2002 3:33 PM
Насчет экономия времени и внимания, так я думаю, что в Microsoft этому внимания уделяют гораздо больше, чем многие программисты-одиночки. Достаточно сравнить исходные тексты тех же MFC, ATL с общедоступными, и посмотреть, где существуют проверки на корректность входных аргументов функций, возвращаемые знаечния и т.д. Да и сам процесс тестирования у Microsoft поставлен гораздо серъезнее, т.к. программист одиночка не может себе позволить такие затраты, как в материальном плане, так и в плане времени. Я уже не говорю о том, что часто программист-одиночка просто не имеет таких знаний о технологиях тестирования программ, которыми владеет корпорация (невозможно ведь знать все).
Мне все-таки кажется, что количество ошибок относительно кол-ва сторк у Microsoft не больше, а возможно и гораздо меньше чем у других производителей ПО.
Другое дело, что прессе не интересно писать про обнаруженные ошибки в программе производитель которой зовется "БлакСофт Бла-Бла-Бла", это никого не интересует. А вот если мы напишем об ошибке в Internet Explorer, которая потенциально может привести к нехорошим последствиям (правда никто толком не знает как этого добиться в реальности), вот это да про это стоит писать.
 

Alexey
10 Sep 2002 3:37 PM
Наверное стоит относиться более объективно к тому, что производит Microsoft. Можно ведь и вспомнить времена года 1992-94, когда еще не было Win95, и когда была реальная альтернатива и в виде OS/2 и в виде разнообразных версий Unix, и никто никого не заставлял покупать Windows и тем более программы под нее, которые работали очень ужасно (тяжело все-таки в 16 разрядном режиме). Но выбор большинства пользователей был сделан в пользу Windows, скорее всего для этого были и объективные причины.
 

Alexey
10 Sep 2002 3:39 PM
Может быть стоит подумать о том, что предложила Microsoft и что не смогли предложить другие производители ПО.
 

Qrot, затраханный внедрением
10 Sep 2002 6:09 PM
glassy, про правильное написание программ и про время, необходимое на это правильное написание, ты заказчикам рассказывай.. а пока их у тебя нет и не предвидится - не надо. почему то эти гады, блин, ну ни хера, блин, не хотят понимать довода "так делать нельзя, потому что это неправильно, а можно вот так, но это дольше и все будет круто!". они ж, падлы такие, только одно знают про сроки - "вчера!", блин
 

glassy
10 Sep 2002 11:16 PM
2Alexey: win* плавно перетекла из доса, имхо это закономерность, а не ошибка пользователей (то есть, конечно их ошибка, только сделанная ранее). Про тестирование в мелкософте у меня также другое мнение. Как пример я много раз приводил DirectX8-readme.txt, а это ведь просто перечень опечаток в документации. Я думаю, что МС, как и другие корпорации, сокращала свои расходы за счет отказа от тестирования и проч. -- тоже известная история. Почти как про ежиков :)
Кроме того, технология тестирования нам преподавалась. И АвтоКАД никакого отношения не имеет к плохим носкам. Хотя я все еще считаю, что с блоками они сильно ошиблись и повалили совсем не в ту степь. Ntgthm 'то скорее не носки, а валенки (вспомнить их Design Center -- классический пример подпорки). Идея :) Начинаю ее думать... смахивает на xfs...

2Qrot: раз уж ты такой умный, что ж ты с такими глупыми заказчиками общаешься, нервы и здоровье подрываешь? ;)

Ладно, мои попытки познакомить capture device с либой evas пока идут с частичным успехом...
http://engy.sourceforge.net/etv.jpg
Хотя videodev.h увидал лишь сегодня часов в 7 вечера.

 

Alexey
11 Sep 2002 7:47 AM
To glassy
> Я думаю, что МС, как и другие корпорации, сокращала свои
> расходы за счет отказа от тестирования и проч. -- тоже
> известная история. Почти как про ежиков :)
Она скорее не отказывалась, а выпускала ПО таким, каким оно становилось после нескольких циклов бета-тестирования, что в принципе делает любой производитель ПО. Критерий выпуска на рынок у всех один, когда кол-во сообщеникритических ошибок снижается ниже определенного уровня ()
Кроме того, технология тестирования нам преподавалась.
 

Alexey
11 Sep 2002 7:55 AM
To glassy
> Я думаю, что МС, как и другие корпорации, сокращала свои
> расходы за счет отказа от тестирования и проч. -- тоже
> известная история. Почти как про ежиков :)
Она скорее не отказывалась, а выпускала ПО таким, каким оно становилось после нескольких циклов бета-тестирования, что в принципе делает любой производитель ПО. Критерий выпуска на рынок у всех один, когда кол-во критических ошибок снижается ниже определенного уровня ПО выпускается на рынок. Ты предлагаешь производителям ждать пока тестеры отловят ВСЕ ошибки, а программисты их отладят, так на это никаких денег не хватит, платят ведь за продукт а не за разработку.

> Кроме того, технология тестирования нам преподавалась.
То что преподается в университете в течении одного-двух семестров позволяет только познакомить студента с основными стадиями и принципами тестирования, но никак не делает из него специалиста по тестированию (как и любая преподаваемая дисциплина). Для становления специалиста необходимо его участие в реальных проектах, а если говорить о хороших специалистах, то и проекты должны быть очень серьезные.
> раз уж ты такой умный, что ж ты с такими глупыми заказчиками
> общаешься, нервы и здоровье подрываешь?
Так заказчиков не выбирают, с ними сотрудничают. И у них цели другие, им необходимо получить проект за фиксированную цену и в оговоренные сроки. А если им говорить о том, что я скоро переделаю структуры данных и алгоритмы программы, что позволит улучшить то-то и то-то, то они обычно смотрят непонимающе, так они ЭТОГО не просили, а просили требуемую фнукциональность в УКАЗАННЫЕ сроки. Причем часто они спокойно относятся к возможным ошибкам, которые программисты не успели исправить, и даже готовы обсуждать все улучшения в следующем этапе. В противном случае, если программы не будет в срок, то и следующего этапа не будет (по крайней мере для этого программиста, заказчик просто найдет другого исполнителя).
 

Tolik
11 Sep 2002 7:59 AM
2 glassy

>Конкурировать, кстати, мой кад вполне могёт. Правда, только >среди кадов с freebsd/gpl лицензиями

:-)))
Когда я (в молодости) занимался спортом, то да, были некоторые с разрядом, но разряд у них был 3-й женский, облегченный.

... навеяло ассоциацию

>к конструктору не подойду (если честно, не имею особого
>желания к кому-либо подходить вообще),

Shot !!! :-)))
 

Alexey
11 Sep 2002 8:01 AM
> win* плавно перетекла из доса, имхо это закономерность, а не
> ошибка пользователей (то есть, конечно их ошибка, только
> сделанная ранее).
Где win* плавно перетекала из доса (или под перетеканием понимается использование 16 разрядного режима), покажи пожалуйста. И какую ошибку пользователи совершили ранее. Ведь Unix сообщество не очень интересовалось рынком ПК и реальных предложений не было.
Как бы ты поступил на месте пользователей.
Напомню все таки еще раз про OS/2 (кстати совместная разработка с Microsoft), ведь не просто так они от нее отказались (я имею в виду MS), эта ОС просто не нашла поддержки у пользователей, хотя была очень неплохой с точки зрения программиста (я думаю не хуже 3.1 и 95), однако после выходя 95, а тем более NT про нее просто забыли.
 

glassy
11 Sep 2002 8:49 AM
> Ты предлагаешь производителям ждать пока тестеры отловят ВСЕ
> ошибки, а программисты их отладят,

а в чем проблема-то?
 

glassy
11 Sep 2002 8:54 AM
2Tolik: Mozilla тоже имеет 3-й женский?
 

glassy
11 Sep 2002 9:01 AM
XMMS -- пример проги без багов.
 

Tolik
11 Sep 2002 9:27 AM
2 glassy

А ты имеешь какое-то отношение к Мозилле ?

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

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

Alexey
11 Sep 2002 9:38 AM
To glassy:
Мы наверное говорим о немного разных вещах. Как можно сравнивать XMMS и ОС.
Ты наверное вообще не понимаешь очем речь идет. Ну я даже и не знаю как с тобой разговаривать (хотя уже кто-то говорил что разговор немого с глухим). Ты бы еще сказал, что вот я в написал программу она умеет 2 на 2 и работает без ошибок в отличие от продуктов MS.
Проблема в том что если дожидаться пока будут отловлены ВСЕ ошибки и все они будут исправлены, ни одна фирма не сможет заниматься коммерческим производством софта, они раньше на зраплату все деньги изведут. Все вернется в далекие врмена, когда софт писался внутри организаций, причем был он гораздо более глючный, часто вообще не внедрялся. Софт пишется внутри и сейчас, но никто его уже не пишет с нуля.
И оповторюсь, что прежде чем ругать MS, необходимо помнить что они продукт постянно тестируют и исправляют ошибки.
А чтобы сравнить кол-во ошибок, так посмотрите на bugfix от других компаний Oracle, Sybase, 1С, RStyle, Парус, Галактика, CISCO. Может быть проблема в том, чо многие из них просто стараются не публиковать сведения о найденных ошибках и исправлять их вообще в следующей версии или никогда?
 

glassy
11 Sep 2002 9:41 AM
К мозилле я имею отношение больше, чем ты.
 

Alexey
11 Sep 2002 9:43 AM
To glassy:
я плакаль...
Признайся ЭТО ты написал

void
_common_move_object(Object * obj, double dx, double dy)
{
if (!(obj->flags & FLAG_SELECTED))
return;
if (obj->flags & FLAG_DELETED)
return;
switch (obj->type)
{
case OBJ_LINE:
line_move((Line *) obj, dx, dy);
break;
case OBJ_POINT:
point_move((Point *) obj, dx, dy);
break;
case OBJ_CIRCLE:
ci_move((Circle *) obj, dx, dy);
break;
case OBJ_ARC:
arc_move((Arc *) obj, dx, dy);
break;
case OBJ_ELLIPSE:
ell_move((Ellipse *) obj, dx, dy);
break;
case OBJ_EARC:
earc_move((EArc *) obj, dx, dy);
break;
case OBJ_IMAGE:
image_move((Image *) obj, dx, dy);
break;
case OBJ_TEXT:
text_move((Text *) obj, dx, dy);
break;
}
}

Ты когда нибудь пробовал читать что-нибудь типа Страуструпа, или ты занят только написанием када и обсуждением недостатков продуктов MS. Я ни в одном исходнике от MS не видел ТАКОГО, только в поделках студентов (причем хорошие пишут так только на первом курсе, а плохие всю жизнь).
Как можно вообще осуждать MS...

PS. Извиняюсь что погорячился
 

Alexey
11 Sep 2002 9:45 AM
To Tolik:
> Третий раз тебе повторю - купи книжку под
> названием "Мифический человеко-месяц" или хотя-бы скачай (она
> в pdf в инете валяется) - и прочти. Многое поймешь в
> коммерческой разработке

Странно, я почему то тоже самое хотел посоветовать glassy...

 

glassy
11 Sep 2002 9:46 AM
2Alexey: Я просто говорю, что во-первых, писать можно без ошибок, а во-вторых (уговорили), планирование должно занимать положенные 50% времени разработки, а кодиорвание положенные 10% времени разработки. Любое сокращение планирования/тестирования есть зло.
 

Alexey
11 Sep 2002 9:49 AM
To glassy:
Я думаю, что никто в Microsoft не сокращает сроки планирования и тестирования, но только если мы говорим 50%, то должны указать конечный срок, иначе о каких 50% можно говорить. А раз указали конкретный срок то извольте в него уложиться. Тем более что процесс разработки идет итеративно и 50% это суммарные затраты времени, а не то что мы 5 месяцев планируем а потом пишем
 

Alexey
11 Sep 2002 9:50 AM
Писать без ошибок - а что под этим понимается. Что человек пишет сразу и без ошибок, так такого не бывает. А если имеется в виду что человек пишет-тестирует-исправляет, то все что я говорил остается верным
 

Tolik
11 Sep 2002 10:10 AM
2 Alexey

> я плакаль...

Программу на фортране можно написать на любом языке программирования. ;-)
 

eXOR - billgmicrosoft.com
11 Sep 2002 10:13 AM
2 Alexey:
Послушайте... вы говорите много - много правильных вещей, но очень вас прошу - перестаньте выдавать свои домыслы за истину. Т.к. вы не имеете достоверной и подтвержденной независимым экспертом информации о том, как выглядит цикл разработки программного продукта в Microsoft - это является вашим домыслом. Говорите пожалуйста о том, о чем вы имеете представленние.
 

eXOR - billgmicrosoft.com
11 Sep 2002 10:15 AM
2 Tolik:
Стиль программирования - это лишь отраженние образа мыслей. Подход к программе, как к набору действий, а не как к набору объектов - тоже имеет право на жизнь.
 

DemonZla
11 Sep 2002 10:45 AM
Alexey, как пишут в Microsoft видно по продуктам. Если даже после "тщательного" бета альфа и т.п. тестирования появляются ошибки, которые могут привести к большим неприятностям, что уж тут говорить о таких разработчиках.
А насчёт "программистов одиночек", так они спокойно могут воспользоваться лицензией GPL и совместной разработкой с тысячами других программистов, а может и с миллионами, на то есть интернет.
Поэтому часто бывает, что ПО от этих, так называемых, "одиночек" по качеству могут и превосходить коммерческие аналоги.
Беда коммерческого ПО в том, что его разрабатывают в основном ради получения прибыли, тогда как "одиночки" часто делают ПО "для себя" и стараются сделать его максимально работоспособным и отлаженным. По поводу сроков скажу, glassy прав, лучше делать ПО дольше, но оно заием будет работать гораздо надёжнее. А различные временные рамки очень часто мешают разработчикам.
 

DemonZla
11 Sep 2002 10:49 AM
заием/затем
 

glassy
11 Sep 2002 10:49 AM
> Что человек пишет сразу и без ошибок, так такого не бывает. А
> если имеется в виду что человек пишет-тестирует-исправляет, то все
> что я говорил остается верным

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

glassy
11 Sep 2002 10:58 AM
2DemonZla: что ты распинаешься? Толик вот даже не видит разницы между бесплатным софтом и софтом с открытым исходным кодом.
 

Alexey
11 Sep 2002 11:31 AM
To glassy:
Не понял
> Писать надо сразу, тестировать заранее подготовленными
> тестовыми данными. А если программист "пишет-тестирует-
> исправляет" циклически, то это либо плохой программист, либо
> недостаток планирования.
Т.е. ты готовишь тестовые данные, затем прогоняешь тест и если тест не пройден, ты не исправляешь обнаруженные ошибки.
Честно говоря первый раз вообще вижу, что человек отвергает цикличность разработки.
 

Alexey
11 Sep 2002 11:33 AM
To eXOR:
> Послушайте... вы говорите много - много правильных вещей, но
> очень вас прошу - перестаньте выдавать свои домыслы за истину.
> Т.к. вы не имеете достоверной и подтвержденной независимым
> экспертом информации о том, как выглядит цикл разработки
> программного продукта в Microsoft - это является вашим
> домыслом. Говорите пожалуйста о том, о чем вы имеете
> представленние.
Естественно, что я не имею информации о внутренней работе разработчиков в MS, кроме той которую они так или иначе упомянают в своих статьях, пресс-релизах и т.д. Но надо отметить, что я говорил всего-лишь об общепринятых вещах и не думаю, что в MS дела обстоят хуже, скорее всего лучше
 

Alexey
11 Sep 2002 11:48 AM
To DemonZla:
> Alexey, как пишут в Microsoft видно по продуктам. Если даже
> после "тщательного" бета альфа и т.п. тестирования появляются
> ошибки, которые могут привести к большим неприятностям, что уж
> тут говорить о таких разработчиках.
Я достаточно давно являюсь потребителем продукции MS, и честно говоря небыло у меня ошибок, которые привели бы к большим неприятностям.
Информацию в инете о таких неприятностях видел, но честно говоря видел аналогичные ошибки и в ПО других производителей.

> А насчёт "программистов одиночек", так они спокойно могут
> воспользоваться лицензией GPL и совместной разработкой с
> тысячами других программистов, а может и с миллионами, на то
> есть интернет.
Честно говоря я слабо понимаю как можно разрабатывать продукт с помощью тысяч программистов (я не говорю о миллионах). Я согласен, что так его можно тестировать, вносить НЕКОТОРЫЕ исправления, но о полном цикле разработки продукта с нуля в большинстве случаев и не идет речь.

> Поэтому часто бывает, что ПО от этих, так
> называемых, "одиночек" по качеству могут и превосходить
> коммерческие аналоги.
Это бывает очень редко и чаще всего в тех областях где уже существуют аналогичные коммерческие продукты принятые пользователями. Я очень много видел всяческих заменителей "блокнотов" и прямо-таки очень крутых редакторов, но ни один из не привлек мое внимание качеством работы и стабильностью.

> Беда коммерческого ПО в том, что его разрабатывают в основном
> ради получения прибыли, тогда как "одиночки" часто делают
> ПО "для себя" и стараются сделать его максимально
> работоспособным и отлаженным.
Продукт нельзя разрабатывать ради получения прибыли. Как вы себе это прдеставляете. Собрались разработчики и сказали: "А давайте сделаем ПО для получения прибыли???"
Тем более что большую часть прибыли получают не сами разработчики, а те кто платил им деньги.

> По поводу сроков скажу, glassy прав, лучше делать ПО дольше,
> но оно заием будет работать гораздо надёжнее. А различные
> временные рамки очень часто мешают разработчикам.
Извините меня, но невозможно заниматься разработкой серъезного ПО без временных рамок. Поставьте себя на место заказчика. Вы УЖЕ заплатили 20000$ команде разработчиков за полгода, должны получить ПО, а они вам сообщают что будут еще отлаживать его неизвестно сколько и просят дальше платить им зарплату.
А человек возможно и не свои деньги им платил, а кредит брал, да мало-ли и вот в результате заказчик поимел кучу проблем. Разработчики поимели 20000$, они конечно довольны.
Действительно временные рамки очень сильно мешают.

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

Alexey
11 Sep 2002 11:55 AM
To DemonZla:
> тогда как "одиночки" часто делают ПО "для себя" и стараются
> сделать его максимально работоспособным и отлаженным
Одиночки действительно делают продукты под себя, но часто они стремятся не добиться его отлаженности и работоспособности, а реализовать некоторую кучку "фич", которые им очень хочется видеть и на этом процесс заканчивается.
А процесс отладки очень трудоемкий и нудный на него как раз у одиночек времени не бывает. Да и кому захочется по собственной воле тратить на тестирование (не отладку) больше времени, чем на написание программы.

To glassy:
> тестировать заранее подготовленными тестовыми данными.
Кстати опиши примерно, как должны выглядеть тестовые данные для
операционной среды типа Windows, ну или для Linux (я не говорю что их нет, но интересно человек вообще понимает о чем говорит или нет).
 

Alexey
11 Sep 2002 12:03 PM
Интересно, а откуда вообще такие представления, что сущуствуют программы без ошибок. Все серъезные программы, которые мне встречались обычно регулярно обновлялись и часто новая версия номер X.X....150 не имела ничего нового кроме исправленных старых ошибок (и новых появившихся в результате исправления старых). Исключение составляли программы которые были с ошибками, но их уже никто никогда не собирался исправлять (к примеру, Borland C++ 3.1).
 

Tolik
11 Sep 2002 12:17 PM
А ты поставь вопрос по другому

glassy, признайся честно, сколько у тебя есть программ, тобой разработанных, КОТОРЫМИ ПОЛЬЗУЕШЬСЯ НЕ ТОЛЬКО ТЫ, в которых НЕТ ОШИБОК

желательно хоть сколько-либо полезных для общества и чуть сложнее, чем Hello World
 

glassy
11 Sep 2002 2:06 PM
2Tolik: 2 модуля (evas_fileless_image, апрель, и emо, август), 2 приложения (engycad, июль, и echoo, август). До этого писал в основном либо в среде матлаб, либо для себя на Делфи или VC. Еще раньше были лабы. В настоящее время жду ebits2 -- продолжение идеи emo, писать в настоящее время глупо, так как ebits2 сделает все гуи, тобой виденные. Могу дать урлы на сорсы. Не понимаю только, зачем кричать.

2Alexey: определяются спеками. Но то, что таварисчи из мелкософта прошли мимо кривого ттф-шрифта или вывода в консоль \t\t\b\b\b\b\b -- это уже факты.

"Все серъезные программы, которые мне встречались..." ага, тяжелое детство, игрушка, прибитые к потолку... Как нет ошибок в hello world!, так ошибок может и не быть в других приложениях. Уж поверь мне, я в своей жизни использовал malloc/free намного чаще, чем тебе может показаться, а использование двусвязных списков -- вообще моя визитная карточка.
 

glassy
11 Sep 2002 2:08 PM
2Alexey: кстати, на том скриншоте, каким образом, по-твоему, я работаю с capture device-ом? Не было ни одного sigv-а.
 

Alexey
11 Sep 2002 2:33 PM
To glassy:
Это о чем ???
> Уж поверь мне, я в своей жизни использовал malloc/free намного
> чаще, чем тебе может показаться, а использование двусвязных
> списков -- вообще моя визитная карточка
Честно говря не понял очем речь. Любой программист, который пишет на Си просто вынужден работать c malloc/free, тоже самое относится и к двухсвязным спискам, очень часто используемая структура данных (за исключением может быть приложений баз данных, там такая потребность обычно возникает редко).

Наличие ошибки при работе с КРИВЫМИ ttf шрифтами, может и досадно, но не вижу кому это может сильно помешать. Тоже относится и к \t\t\b\b\b\b\b, не вижу особой связи с реальными приложениями.

>"Все серъезные программы, которые мне встречались..." ага,
> тяжелое детство, игрушка, прибитые к потолку... Как нет ошибок
> в hello world!, так ошибок может и не быть в других приложениях
Ну это же вообще глупость.
 

Alexey
11 Sep 2002 2:36 PM
To glassy:
Тоже не понял о чем это
> кстати, на том скриншоте, каким образом, по-твоему, я работаю
> с capture device-ом? Не было ни одного sigv-а.
 

Tolik
11 Sep 2002 2:41 PM
Это он о том, что у каждого свои понятия о крутизне

Для кого-то - это умение использовать malloc и двусвязные списки, а также конкуренция в 3-ем женском облегченном разряде и аж три пользователями, скачавших программу (сколько из них её хоть раз запустили - передовая наука умалчивает). Обычно для них же характерна крутая зарплата в $150 и (странное соответствие) - нелюбовь к MS.

Ну что тут скажешь. Скромность - качество хорошее. Положительное. Но до такого самобичевания доходить - это уже почти святость.

;-)

Есть люди - величава и чиста
Их внешность, пока немы их уста
Но только отворят они уста
На ум приходят срамные места
(с) И. Губерман
 

Alexey
11 Sep 2002 2:50 PM
To Tolik:
Согласен. Собственно что меня и втянуло в эту дискуссию, так только то что я постоянно наблюдаю как MS ругают люди, чьи высказывания мягко говоря неграмотны, причем делают это прямо с каким ненормальным чувством удовлетворения.
Не то что бы я люблю MS, Linux мне тоже симпатизирует, но честно говоря если выбирать из Unux систем, я бы выбрал что-то другое.
И кажется мне, что своей популярностью Linux обязан только тем, что является одним из клонов Unix, но только бесплатным. Но тогда это всего-лишь вопрос денег и не имеет никакого отношения ни к архитектуре ОС ни к процессу их разработки и исправления ошибок.
 

Alexey
11 Sep 2002 2:55 PM
А по поводу кривых шрифтов и других ошибок MS.
Так поделюсь своим опытом. Как-то поставил себе Mandrake, смотрю а там и какие-то игрушки есть. Решил запустить посмотреть.
В результате компьютер завис наглухо (пришлось жестко жать Reset), может я конечно чего-то не знал и что-то можно было сотворить, но плясать с бубном вокруг него не захотелось (пробовал все игрушки, одна вроде запустилась, хотя уже не помню, но большинство точно также вешали машину). У MS хотя бы софт, который с ней идет запускается нормально.
Это так лирическое отступление.
 

Qrot
11 Sep 2002 11:10 PM
2glassy: я тебе уже объяснял образ мысли заказчика. ради прикола ввяжись в какой-нибудь коммерческий проект средней величины, интересно на сколько тебя хватит...
а если я найду ошибку в твоем каде - ты мне денежный эквивалент ящика старопрамена вышлешь? :))
а что круче - двусвязные списки или повсеместные malloc/free? :) я так смеялся когда прочитал про визитную карточку :Р
 

Skull - sibskullmail.ru
12 Sep 2002 5:12 AM
2Alexey: "Честно говоря я слабо понимаю как можно разрабатывать продукт с помощью тысяч программистов" - пример: ядро GNU/Linux, KDE, Mozilla. Я так думаю, вам эти проекты не знакомы совершенно, поэтому особо спорить с вами бесполезно. Куда как более продуманная архитектура BeOS была невостребована, а хорошо продуманное ядро NT извратили кривым GUI. Так что не деньги решают все в разработке. Насчет выбора дистрибутива - тык, Мандрик худший по отлаживанию дистрибутив. У меня в RH такого не было. Может, сначала надо думать и выбирать, а оптом ставить? Насчет нормального запуска под Windwos - гоните, причем не по-детски. Софт не-от-MS работает просто убого, нужно ковыряние ручками по аккомпанимент постоянных сообщений о необходимости покупки этого дерьма.

2Tolik: вообще-то восторгание срамными стишками Губермана всповокупе с психологическим анализом личности glassy (а не его креатива) говорит о том, что вам по данной теме сказать нечего и посему вы встаете на скользкую тропу обличения личности без анализа его заслуг.
Далее по преимуществам Linux - окститесь! Кроме Linux существует не менее популярная FreeBSD. Или вы не знали? Стыдно мне за вашу неосведомленность!
 

glassy
12 Sep 2002 6:00 AM
2Qrot: нет, не вышлю :) И не надо меня коммерческими проектами пугать. Для этого РТО и работает, и проблем у него относительно немного. Далее про malloc/free -- kind of brave, yeah? Например, вот нехило оптимизированный кусок кода без segv-ов, так сказать смесь использования либы "абстрактного" рисования с низкоуровневым использованием ioctl.
http://engy.sourceforge.net/test-core.c

2Alexey: мы говорили про ошибки, верно? Так в чем же проблема -- где они есть и где их нет. Кстати, ты когда нибудь сталкивался с проблемой дров под ХР? Просто интересно.

2Tolik: я писал уже, что ежедневная оплата по контракту составляет двузначную цифру в USD. А твои так любимые $150 в месяц -- это плата за знания, которые я мог бы получить за 7 лет обязаловки.

 

glassy
12 Sep 2002 6:00 AM
2Alexey: вешайся, я в эту сказочку про игрушки в мдк не верю.
 

Alexey
12 Sep 2002 7:03 AM
To glassy:
> вешайся, я в эту сказочку про игрушки в мдк не верю
Не имею обыкновения врать.

To Skull:
> пример: ядро GNU/Linux, KDE, Mozilla. Я так думаю, вам эти
> проекты не знакомы совершенно, поэтому особо спорить с вами
> бесполезно.
Не надо считать других глупее себя. Мне хорошо известны эти продукты. Укажите пожалуйста который из них был разработан с НУЛЯ ТЫСЯЧАМИ программистов. В начкале каждого из них стояла всего лишь небольшая группа (или вообще одиночки), которая и решала все вопросы с архитектурой продукта и т.д. и многие из этих решений играют существенную роль и сейчас. Я также не считаю вас глупым человеком, наверное мы просто неправильно друг друга поняли. Вы можете взять ту же FreeBSD там также на пахло коллективной разработкой (я имею в виду большое кол-во людей), весь мир присоединился к разработке гораздо позже.

> Куда как более продуманная архитектура BeOS была
> невостребована
В том ве и дело, что НЕ БЫЛА, поэтому про хорошо продуманную архитектуру если и возможно говорить, так на лекциях в университете студентам. А самим было бы неплохо подумать и вызказать предположения, почему она не была востребована.
Никому не нужна ОС единственное достоинство которой хорошая архитектура, значит ей не хватило чего-то еще. Как минимум серъезные организации интересует поддержка производителя, наличие грамотных специалистов по данной ОС и т.д.

> , а хорошо продуманное ядро NT извратили кривым GUI.
Не считаю, что это так.
 

Alexey
12 Sep 2002 7:09 AM
To glassy:
> мы говорили про ошибки, верно? Так в чем же проблема -- где
> они есть и где их нет. Кстати, ты когда нибудь сталкивался с
> проблемой дров под ХР? Просто интересно
Если интересно, отвечу. Единственная проблема, с которй я столкнулся заключалась в том, что в связи с банкротством Aureal, у меня нет драйверов от производителя под XP. На практике это означает, что мне не доступен аппаратный эквалайзер звуковой платы и ВСЕ, все остальные задачи отлично решают драйвера, которые идут с XP.

Проблема с драйверами для этой платы у меня возникла как раз для Linux. Пришлось дополнительно ставить исходники ядра, чтобы откомпилировать драйвера для этого же Aureal. Честно говоря мне после этого стало смешно читать статьи, в которых Linux обсуждается как реальная альтернатива Windows на рабочих столах обычных пользователей. Так и вижу, как они дополнительно ставят компилятор, исходники ядра и занимаются компиляцией (ну не их это дело).
 

Alexey
12 Sep 2002 7:33 AM
To Skull:
> Далее по преимуществам Linux - окститесь! Кроме Linux
> существует не менее популярная FreeBSD. Или вы не знали?
> Стыдно мне за вашу неосведомленность!
Уверяю тебя, что многие знают о существовании как FreeBSD, так и многих других операционных систем. И к сожалению во всех них присутсвуют ошибки.
Когда организация выбирает ОС для применения в своих проектах она вообще-то руководсвтует достаточно разумными принципами.
Помимо надежности и восторженных возгласов фанатов Linux, это еще и доступность для организации специалистов по данной ОС, курсов повышения квалификации, ПО которе необходимо данной организации (а не только то которое бесплатно дается на компакте дистрибутива). Поддержка ОС со стороны производителей обордования и т.д. Совместимость с ПО обязательным к использованию, разработанным очень давно. К сожалению Linux достаточно недавно стал соответсвовать этим принципам. Помню что в 97 году его активно использовали только на маршрутизаторах TCP/IP, под которые всем очень нравилось ставить 386 машины.
А в реальности получается следующее, если я вдруг установлю Linux на клиентские компьютеры, то куча программ которые у нас просто обязательны к использованию и которые мы не может переписать под новую ОС (т.к программы чужие), просто откажутся работать. Если я установлю Unix ситему на сервера то мне придется искать СУБД под новую ОС, и опять таки кроме проблем мне это ничего не даст. Единственное место где я мог бы использовать Unix, так это Internet сервера, но они опять таки отлично работают 24 часа в сутки на продуктах MS и не требуют никакого обслуживания (да еще и позволяют без проблем использовать учетные записи NT). Ну хотел бы я использовать Unix, но разумных причен этому нету. А ставить его только для того, чтобы самому иметь большую практику и потом указывать в резюме, что дескать имею большой опыт администрирования Unix, по меньшей мере не уважение к работадателю.
У моего друга наличиствует коллега, который является ярым поклонником OS/2 и Linux, и агитирует всех за перенос Oracla на Linux систему, но никаких реальных причин привести не может.
 

Alexey
12 Sep 2002 7:47 AM
> Насчет выбора дистрибутива - тык, Мандрик худший по
> отлаживанию дистрибутив. У меня в RH такого не было. Может,
> сначала надо думать и выбирать, а оптом ставить?
Извините меня, но тогда надо каждый раз указывать, что вот MS это плохо, а вот конкретно RH такой-то сборки (не Mandrake или что-либо еще) это хорошо. Давайте тогда избавимся от названия Linux, т.к. оно не гарантирует ни скорость работы, ни стабильность, ничего кроме своей бесплатности. А Mandrake я выбирал только из-за того, что многие именно его позиционируют, как заменитель Windows на рабочих местах, вот и хотелось проверить, многое понравилось, но то что были неприятные ошибки то это тоже верно. Я не говорю об ошибках в ядре или еще где-то, возможно это были ошибки конкретных прикладных программ.

> Насчет нормального запуска под Windwos - гоните, причем не по-
> детски. Софт не-от-MS работает просто убого, нужно ковыряние
> ручками по аккомпанимент постоянных сообщений о необходимости
> покупки этого дерьма.
Я думаю, что стоит выбирать выражения, особенно в публичных вытуплениях. Никто не имеет целью вас обманывать, все делятся только своим опытом. А то что софт не от MS работает плохо, так это во-первых не относится ко всему софту (у меня СУБД работает без проблем, причем написана далеко не MS), а во-вторых это в первую очередь претензии к разработчикам данного софта, а не к ОС. В том что кто-то пишет программы с таким кол-вом ошибок, что они мешают даже обычной работе виноваты в первую очередь разработчики этих программ, а не MS.
 

glassy
12 Sep 2002 7:54 AM
2Alexey:
1. wine у меня даже Дьяблу потянул.
2. поддержка оборудования в последних дистрибутивах уже обогнала win32
3. затраты на написание схожих ПП под линуксом меньше -- сказывается архитектура, POSIX-стандарт, хорошая документированность и опыт предыдущих поколений программистов.
 

Alexey
12 Sep 2002 9:22 AM
To glassy:
Насчет поддержки оборудования не уверен, хотя все может быть, но подержка должна идти от производителя оборудования, а не от создателей ОС. Только вот зачем мне такая поддержка, если мне драйвер самому приходится компилировать???
А на счет затрат и опыта, да если имеется в виду использование сторонних библиотек или просто чужого кода. Но опыт ведь не только в этом, да и Windows существует уже больше 5 лет и кода для нее тоже достаточно.
А затраты на написание схожих ПП вещь вообще сложная, они ведь обычно в деньгах измеряются, а не кол-ве времени затраченном на кодирование. Про POSIX ничего писать не буду, т.к. тогда нужно говорить серьезно и подходить объективно не только к Unix, но и к продуктам MS. Я думаю, что не стоит принижать разработчиков Windows NT, которые достаточно грамотны и разбираются в архитектуре ОС (насколько я знаю, некоторые из них имели уже за плечами опыт реализации ОС в том числе и Unix подобных).
И если они реализовали NT именно так, а не иначе, то наверное не из-за того, что по другому не умели, а потому что хотели добиться именно этого. Ведь никто не говорит почему-то о целях, которые ставила MS перед собой бросая сотрудничество с IBM по проекту OS/2 и решив делать с нуля свою систему. А обсуждать конкретные ошибки, которые связаны то ли с драйвером оборудования, то ли с прикладным ПО (причем возникающие не только у MS но и в том же Linux) и при этом кричать и тыкать пальцем в MS, по меньшей мере не красиво.
И не стоит забывать, что большой возраст ОС помимо надежности и наличия большого кол-ва хорошего системного ПО для Unix, влечет за собой и наличие решений в архитектуре системы, которые были достаточны для конца 70-х, но никак не сейчас.
 

Alexey
12 Sep 2002 9:25 AM
To glassy:
> 1. wine у меня даже Дьяблу потянул.
Когда-то в 95 году я сказал примерно то же самое, только относилось это к запуску Win 3.1 программ под OS/2. На что мне было резонно замеченно, что зачем делать обычные вещи из-под одного места. Если тебе нужен Диабло, так не извращайся и играй в него под Win. А Unix лучше оставить для Unix программ.
 

Qrot, затраханный внедрением
12 Sep 2002 10:21 AM
2glassy: поддержка USB2 на август была все еще на экспериментальном уровне, и присутствует только в виде патчей ядра, AFAIK. так что не свисти про "догнал и перегнал". ты вообще считал и сравнивал количество поддреживаемого оборудования под ХР и под линукс?
 

Qrot
12 Sep 2002 10:34 AM
черт, ник запомнился :)))
 

glassy
12 Sep 2002 11:09 AM
2Qrot: я же говорил про ядро rh7.3 linux-2.4.18-3. Так вот, 2.4.19 имеет менее новые модули, что ж, спасибо rh, обогнали kernel.org на полкорпуса. Ядро 2.4.20 сделает 2.4.18-3 по всем пунктам, это видно по pre-N. Жду вот.
Про поддерживаемое оборудование ХР знаю достаточно. Чего мне не удалось найти корректно работающего под ХР:
mustec paragon a3 1200 pro (под win2k драйвер был бетой)
HP Design Pro 500 24"
pinacle 500Plus
conexant hsf
Это половина всего внешнего оборудования, с которым я имею дело.

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

glassy
12 Sep 2002 11:12 AM
небольшая поправка -- моя работа заключается не в поиске дров
 

Qrot
12 Sep 2002 11:38 AM
2glassy: твоя работа похоже заключается в том, что бы всякие необоснованные заявления делать. так и говори - для моего железа поддержка оборудования в ХР недостаточна. здесь опять же вопрос - у производителя железа смотрел? почему у них нет? может оно уже настолько старо что нах никому не надо?
я конечно понимаю, что кул-кернел-хацкеров хлебом не корми, дай всякие драйвера под разное оборудование поваять.. но будут ли эти драйвера так же хороши как драйвера от производителя железа? будут ли поддерживать все фичи железа? не будет, по моему опыту - постоянно чего-нибудь нет и чего-то не умеют.
 

glassy
12 Sep 2002 12:56 PM
2Alexey: "которые были достаточны для конца 70-х, но никак не сейчас"
по-твоему, какая скорость передачи данных по юниксовым пайпам в линуксе? Твои знания были актуальны для вин98, но никак не сейчас.

 

Alexey
12 Sep 2002 1:23 PM
To glassy:
> по-твоему, какая скорость передачи данных по юниксовым пайпам
> в линуксе? Твои знания были актуальны для вин98, но никак не
> сейчас.
Причем тут скорость передачи данных по пайпам, меня например, больше волнует архитектура системы безопасности, и в частности, для файловой системы. Тут меня мало что устраивает в Unix.
А в MSDOS например можно работать с видеопамятью гораздо быстрее, чем под Windows ну и что?
 

Alexey
12 Sep 2002 1:26 PM
To glassy:
И какой вообще имеет смысл измерение скорости работы по пайпам. Мерять можно производительность ОС в связке с реальным приложением (и мерять не скорость работы по пайпам а хотя бы кол-во выполненных транзакций), это будет хоть о чем-то говорить и на базе этого можно делать выбор системы для бизнеса.
 

Qrot
12 Sep 2002 1:35 PM
2glassy: ну да, а еще твой линух нити быстрее создавать могет.. ну и что? :))
 

glassy
12 Sep 2002 2:03 PM
2Alexey: я ведь к чему веду? Чтобы получить хорошую производительность надо знать и уметь. Я знаю Си достаточно, чтобы реализовывать ОО подход. С другой стороны, работа с памятью (которая ОЗУ), с пайпами, которые либо ОЗУ, либо опять ОЗУ, либо снова ОЗУ, с файлами, которые ОЗУ с вероятностью под 95% (девайсы решили не трогать они тоже озу, только данные получают из PCI) *напрямую*, минуя все левые/глючные/тормозные апи -- это и есть программирование, а ляпание формочек на VB -- это, извините, что? Правильно, повышение состояния самых богатых и влиятельных капиталистов в мире.
 

Alexey
12 Sep 2002 2:22 PM
To glassy:
> Я знаю Си достаточно, чтобы реализовывать ОО подход
ОО подход надо реализовывать на тех языках, которые для этого предназначались, я честно говоря хотел это еще написать по листингу када, потому что там эта эмуляция ОО явно видна. А иначе получается именно то что получается. Вместо нормальных виртуальных функций языка Си++ мы видим какое-то извращение с case. Ты бы сразу писал ОО программы на ассемблере (а лучше в машинных кодах) ведь это и есть НАСТОЯЩЕЕ программирование, а так ляпаешь на Си неизвестно что.

> *напрямую*, минуя все левые/глючные/тормозные апи
АПИ как раз и придумывают люди которые не хотят каждый раз писать код с нуля, или ты считаешь, что используяю стороннюю библиотеку ты не пользуешься АПИ (пусть это и не АПИ операционной системы).
Вообще то говоря, когда пишишь РЕАЛЬНЫЕ проекты, тебя редко посещают заботы о прямом доступе к оборудованию, там важнее несколько другие вещи.

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

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

glassy
12 Sep 2002 3:01 PM
2Alexey: про извращение на Си -- отсылаю к Страуструпу, ты сам-то когда-нибудь видел асм, сгенеренный с++ компилятором? С легкостью я могу отбросить все ОО-языки. Если говорить про С++, то его фича обработки исключений мне была не нужна, а остальное смотрится лучше на Си, даже наследование.

"Вместо нормальных виртуальных функций языка Си++ мы видим какое-то извращение с case" -- lol. Программист Вы наш! Уж поверьте мне на слово, компиллятор С++ в этом месте извращается еще больше.

"заботы о прямом доступе" -- я говорил про левые/ глючные/ тормозные функции. Не думаю, что ты когда-нибудь интересовался какие из них какие. Вот например bzero() -- лучше она memset() или хуже? Правильный ответ -- хуже. Подумай, как это так. :)

Спеку на recordsetgrid в студию.

Про языки баз данных я молчу. В единственной своей БД на Accesse все запросы реализовал программно. Не могу я мышкой строить правила.
 

glassy
12 Sep 2002 3:04 PM
ммммм.... "С легкостью я могу отбросить все ОО-языки" как неустраивающие по тем или иным причинам в качестве языка написания приложений.
 

Не стерпел
12 Sep 2002 3:55 PM
2glassy: А почему именно glassy, а не Наполеон, например?
Эх, не стерпел...
 

Alexey
12 Sep 2002 4:02 PM
To glassy:
> про извращение на Си -- отсылаю к Страуструпу, ты сам-то когда-
> нибудь видел асм, сгенеренный с++ компилятором? С легкостью я
Представь себе видел, но честно говоря никогда не сравнивал языки программирования по асму который генерирует компилятор, имхо другие цели стоят при разработке языка программирования. В частности поддержка той идеологии проектирования и кодирования для которй они создавались (а иначе пиши сразу в машинных кодах и у тебя не будет никакой мешающей прослойки в виде компилятора, который генерит плохой код, компилятор Си тоже обычно создает код, который хуже написанного вручную на асм). И странное мнение у тебя сложилось после прочтения Страуструпа, нигде у него не видел рекомендаций по использованию Си для создания ОО программ, скорее наоборот, иначе зачем ему было Си++ то разрабатывать.
> могу отбросить все ОО-языки. Если говорить про С++, то его
> фича обработки исключений мне была не нужна, а остальное
> смотрится лучше на Си, даже наследование.
Исключения в Си++ появились достаточно поздно и это далеко не самая важная его черта, а к ОО программирование вообще не имеет отношения. Покажи мне пожалуйста наследование на Си. Если ты имеешь в виду свои структуры Object, Arc и т.д. так это ни наследование, т.к для компилятора они никак между собой не связаны. И с твоей стороны корректнее было бы писать void* вместо Object*, Arc*.
> Программист Вы наш! Уж поверьте мне на слово, компиллятор
> С++ в этом месте извращается еще больше.
Может расскажешь в чем именно он извращается больше, или таблица виртуальных функций для тебя большое извращение?

> Про языки баз данных я молчу. В единственной своей БД на
> Accesse все запросы реализовал программно. Не могу я мышкой
> строить правила.
Что значит запросы реализовал программно, если ты имеешь ввиду написание SQL, Access позволяет писать на SQL достаточно свободно, и никто не просит тебя запросы создавать с помощью конструкторов.
Да и вообще-то Access является БД ориентированной на файл-сервера или локальную обработку и к серьезным приложениям не имеет отоношения.

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

Qrot
12 Sep 2002 4:22 PM
glassy, а ты страуструпа то читал сам?
 

Alexey
12 Sep 2002 4:53 PM
To Qrot:
Читал. Причем читал подряд и достаточно внимательно (когда-то время было и на это).
Не прочитал толком последние две-три главы (там где проектирование), да и сейчас около меня лежит я в него периодически заглядываю (использую в качестве справочника по stl).
 

Alexey
12 Sep 2002 4:55 PM
To Qrot:
Извиняюсь, думал что мне вопрос адресован (конец рабочего дня все-таки).
 

Skull - sibskullmail.ru
13 Sep 2002 5:00 AM
2Alexey:
1) "разработан с НУЛЯ ТЫСЯЧАМИ программистов" - правильнее так: разработан с нуля, идия была поддержана тысячами программистов OSS. Устроит?
2) "Если я установлю Unix ситему на сервера то мне придется искать СУБД под новую ОС" - Алексей, помилуй Боже! Не стоит зацикливаться только на одноплатформенной MSSQL. Все остальные СУБД под Linux уже портированы. И вы можете договориться об обмене Windows- версии на версию под Linux. Мы вот Oracle брали сразу под Linux. :)
3) "отлично работают 24 часа в сутки на продуктах MS" - я плачу! ZDnet.ru показывает как раз неустойчивость, как сам сервер, так и ПО (вкл.СУБД).
4) перенос Oracla на Linux систему, но никаких реальных причин привести не может - значит, нет у него дара убеждения. Linux надежнее, производительность под ним, подтвержденная красноярскими ораклоидами на 20% выше. Параллельно можно запускать мелкие, но необходимые задачи, которые поднять на Windows было бы непроизводительно долго. А так sendmail+perl+shell у нас активно обрабатывают специализированную почту.
К тому же сервер проще оптимизировать и удаленно управлят как системой, так и самим серваком СУБД.
5) "конкретно RH такой-то сборки" - Linux - это ядро! И оно одинаково для всех дистрибутивов (если не считать патчей). И варясь в котле GNU/Linux начинаешь ценить конкуренцию. Увы, многих проблем можно новичку избежать, если изначально использовать более отлаженный дистрибутив. Впрочем, продвинутому используемый дистр по барабану. А как заменитель планируют не Mandrake, а Lindows (сюрприз?)
6) "то что софт не от MS работает плохо" - согласен, погорячился. Однако что ни программа, то обязательно shareware. И если б денег хотели действительно за продукт (вот здесь я с уважением скажу про продукты от MS), а не за поделку. Так что претензии не к ОС, а к политике написания софта для нее и методам распространения этого ПО.
 

Alexey
13 Sep 2002 6:50 AM
To Skull:
> правильнее так: разработан с нуля, идия была поддержана
> тысячами программистов OSS. Устроит?
Вполне.

> "Если я установлю Unix ситему на сервера то мне придется
> искать СУБД под новую ОС" - Алексей, помилуй Боже! Не стоит
> зацикливаться только на одноплатформенной MSSQL. Все остальные
> СУБД под Linux уже портированы. И вы можете договориться об
> обмене Windows- версии на версию под Linux
У нас как раз не MSSQL, а СУБД которая портирована под кучу Unix платформ (и что самое интересное под все операционки MS, включая DOS), зовется она Micronetics Standart MUMPS (то еще извращение, хотя и очень надежное). Причем я уверен, что само программное обеспечение встанет легко и без проблем на Unix, но я также уверен что затрачу на это лишнее время и не получу никаких плюсов так как и на NT все работает прекрасно.

> "отлично работают 24 часа в сутки на продуктах MS" - я плачу!
> ZDnet.ru показывает как раз неустойчивость, как сам сервер,
> так и ПО (вкл.СУБД).
Так какое мне дело до ZDNet.ru, а же говорю про себя, а у меня все работает прекрасно.
Вообще-то своим постингом я хотел сказать, что рад был бы использовать Linux в своих проектах, но на данный момент со всем прекрасно справляется NT, и менять уже отлаженную и работающую систему просто так не стоит.

> Linux - это ядро! И оно одинаково для всех дистрибутивов (если
> не считать патчей).
В том-то и дело что работать приходится не с одним только ядром.

> как заменитель планируют не Mandrake, а Lindows (сюрприз?)
Да нет, не сюрприз, про нее тоже наслышан. Но не умея уж очень много времени на эксперименты (т.к. экспериментирую только дома) решил посмотреть только на Mandrake и FreeBSD, как на двух представителей семейства Unix.

 

glassy
13 Sep 2002 7:19 AM
2Не стерпел: glassy выражает не только цвет (так бы я назывался slate), так и отношение к Жизни. А Наполеон -- во-первых собственное, а во-вторых как следствие из первого, не может писаться с маленькой буквы :)
 

glassy
13 Sep 2002 8:08 AM
2Alexey: Б.Страуструп "Дизайн и эволюция языка С++". Там черным по белому написано, как препроцессор называемый "С with classes" реализует полиморфизм, наследование, перегрузку операторов и поч. ОО парадигма появилась немного позже, и на асме тоже можно ОО программировать, но с-компилятор является сильно оптимизирующим, поэтому этот язык так популярен. Кроме того, многие очень хорошие программисты жалются, что при написании кода на С++ не удается его компиллировать в голове для прогнозирования наилучших результатов, и из-за этого сильно страдает качество кода.

 

glassy
13 Sep 2002 8:35 AM
2Alexey; я просто сейчас подумал, что не упоминал про скорость работы своего када, а тебе, как обычному пользователю виндоус, медленность запуска и работы приложений привычна...
 

Alexey
13 Sep 2002 9:35 AM
To glassy:
> Там черным по белому написано, как препроцессор называемый "С
> with classes"
А ты не обращаешь внимание на слово ПРЕПРОЦЕССОР, одна из целей которую ставил перед собой Страуструп это ОТКАЗ от препроцессора, кроме нескольких очень ограниченных случаев его использования.

> Кроме того, многие очень хорошие программисты жалются, что при
> написании кода на С++ не удается его компиллировать в голове
> для прогнозирования наилучших результатов, и из-за этого
> сильно страдает качество кода.
Слушай а может им стоило лучше тратить время на изучение структур данных, алгоритмов и т.д. вместо компилирования кода в голове (вообще-то это бред какой-то). Если ты используешь алгоритм с временем работу n^2, то как не компилируй в голове, ты не получишь скорость исполнения n*log(n). А твои программисты наверное код на Си сразу в голове в инструкции SSE2 компилируют?

Ну и несколько цитат из Страуструпа (я имею в виду его книгу "Язык программирования С++")
"Ключевой целью было СОКРАЩЕНИЕ использования макросов и преобразований типов (этото что присутсвует у тебя)" [параграф 1.4].

"Я не шел на компромиссы, которые могли бы привести к снижению эффективности низкоуровневых средств С++. Эффективность позволяет нам использовать С++ для написания драйверов и других программ, предназначенных для непосредственного управления аппаратурой в реальном времени. В таком коде предсказуемость выполнения играет по меньшей мере такую же роль, как и скорость... Каждое св-во С++ вводилось с учетом ограничений по времени выполнения и требуемой памяти".

"В большинстве приложений есть участки кода, критичные ко времени выполнения. Однако БОЛЬШАЯ часть кода расположена не в них. Как правило, КЛЮЧЕВЫМИ аспектами являются удобство СОПРОВОЖДЕНИЯ, РАСШИРЯЕМОСТЬ и ПРОСТОТА ТЕСТИРОВАНИЯ. Эти свойства С++ привели к его широкому использованию в областях, где совершенно необходима надежность, а также там, где требования к программам значительно менняются со временем" [параграф 1.5].

"Вот некоторые вещи, с которыми С++ справляется лучше чем С
[1] Макросы почти никогда не требуются в С++. Пользуйтесь const или enum, inline во избежание накладных расходов на вызов функций ...
...
[4] Не пытайтесь использовать void*, арифметических действий над указателями, объединений и ПРИВЕДЕНИЙ ТИПОВ... В большинстве случаев приведение типа означает ОШИБКУ НА ЭТАПЕ ПРОЕКТИРОВАНИЯ
...
Самое важное: пытайтесь представить программу в виде набора взаимождействующих понятий, реализованных в виде классов и объектов, а не в виде набора структур данных с функциями, перемалывающими их биты" [параграф 1.6.1]

> а тебе, как обычному пользователю виндоус, медленность запуска
> и работы приложений привычна...
Ты знаешь Linux меня уж никак не поразил своей быстротой, скорее всего наоборот. И это при том, что на Win я запускаю более тяжеловесные задачи. И вообще как можно делать выводы что мне привычно, а что нет.
Не надо скатываться на такие высказывания, если говорить о скорости работы, то можно сравнивать только работу реальных задач (о чем впрочем я уже раньше говорил).

 

Alexey
13 Sep 2002 9:42 AM
To glassy:
> с-компилятор является сильно оптимизирующим, поэтому этот язык
> так популярен
Что значит сильно оптимизирующий компилятор, извини меня но все алгоритмические конструкции С++ совпадают с С, или ты считаешь, что арифметические операции, for, if, case отличаются в С, что мешает их оптимизировать компилятору. Насколько я знаю Intel выпускает свой оптимизирующий компилятор, который поддерживает как С, так и С++. Ну и может быть ты мне напишешь хоть несколько строк, которые характерны именно для С++ и приводят к ужасному падению производительности (или очень плохо компилируются в голове).
 

Alexey
13 Sep 2002 9:59 AM
Кто-то о Mozilla речь заводил и качестве кода, разработанного тысячами разработчиков, вот случайно наткнулся на www.ixbt.com:

"Обновился браузер Mozilla, созданный на основе открытых исходных кодов. В комплекте поставляется сам браузер (с возможностью работы в многооконном режиме), почтовый и чат клиенты, программа чтения ньюсгрупп, HTML-редактор (с поддержкой встроенных стилей) и отладчик скриптов.

Версия 1.0.1 содержит более 650 исправлений, устраняющих проблемы, связанные с безопасностью, стабильностью, потерей данных, пользовательским интерфейсом, быстродействием и совместимостью с некоторыми сайтами. "
 

glassy
13 Sep 2002 11:44 AM
2Alexey: Знаешь как будет ловить льва в пустыне программист на Си? Найдет ближайший какмень и приведет его к типу льва. Продвинутый программист на Си поступит проще и присвоит пустыне тип клетки.
Я тебе еще раз говорю, код, генерируемый С и С++ компиляторами очень сильно отличается. Я уже приводил два примера. Объем кода на асме был в 4 раза больше для С++.

Про SSE2 -- линуксовые программисты программисты пишут под все архитектуры сразу, и PIII также имеет их внимание.

Про ужасное падение производительности -- самый простой пример -- КДЕ рядом с Е16/17.

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

---
А всего багов в мозилле уже исправлено 167 000.
 

glassy
13 Sep 2002 11:49 AM
вобщем, еще раз убеждаюсь, что действительно сложных программ, хорошо написанных на Си, ты не использовал, и мы разговариваем о разных вещах.
 

glassy
13 Sep 2002 12:21 PM
эх, индент поплывет... :(

main()
{
she = alloc_first_she(nice, pretty, tall, smart, rich);
while (!dead(me))
{
....
if ( she->love != me )
{
free(she);
she = alloc_new_she(--nice, --pretty, --tall,
--smart, --rich);
}
else
{
f...ck(she);
new_she = alloc_new_she(++nice, ++pretty,
++tall, ++smart, ++rich);
if( new_she && new_she->love == me )
{
free(she);
she = new_she;
}
else
{
free(new_she);
nice--;
pretty--;
tall--;
smart--;
reach--;
}
}
....
}
free(me);
return 0;
}
 

Alexey
13 Sep 2002 12:40 PM
> вобщем, еще раз убеждаюсь, что действительно сложных программ,
> хорошо написанных на Си, ты не использовал, и мы разговариваем
> о разных вещах.
А откуда ты интересно знаешь какие программы я использовал.
И что должен был показать твой листинг, ты пошутить хотел что-ли? (или это заодно является примером хорошего кода).
 

Alexey
13 Sep 2002 12:45 PM
> тебе еще раз говорю, что если перегрузка операторов не нужна,
> обработка исключений не нужна, то надо ограничиваться чистым
> Си, разумеется, следуя стилю, изложенному в документации к
> линуксу (если ты не умеешь лучше).
Ну ты же бредишь потихоньку.
Перегрузка операторов, исключения НЕ ЯВЛЯЮТСЯ ОСНОВНЫМИ ЧЕРТАМИ С++, мы начинали говорить о ООП, а для не в первую очередь характерна поддержка ИНКАПСУЛЯЦИИ, НАСЛЕДОВАНИЯ, ПОЛИМОРФИЗМА.
Java, Object Pascal и др. тоже не поддерживают перегрузку операторов, но не перестают от этого быть ОО языками программирования. А исключения поддерживаются многими языками, которые не являются ОО. И более того, исключения можно использовать если ты пишешь на Си по ОС Windows, но это тоже не делает Си ОО языком.
 

glassy
13 Sep 2002 1:30 PM
> в первую очередь характерна поддержка ИНКАПСУЛЯЦИИ, НАСЛЕДОВАНИЯ, ПОЛИМОРФИЗМА

Не суть важно.
Никто не мешает
1) делать структуру foo, и набор функций foo_*
2) наследование, преобразование типов снизу вверх и сверху вниз через те структуры, как это сделал Страуструп в своем компиляторе
3) набор функций типа foo_plus_bar() foo_plus_baw(), полиморфизм -- это больное место для Си, но С++ на ранних этапах своего развития препроцессил именно так.

Алексей, если ты и в самом деле считаешь именно эти три основных свойства ООП самыми главными отличиями С++ от Си, и совершенно недооцениваешь такие различия, как качество кода, наличие обработку исключительных ситуаций и перегрузку операторов, твой программистский скилл очень небольшой.
 

Andrey - bavait.susu.ac.ru
13 Sep 2002 1:30 PM
>Я тебе еще раз говорю, код, генерируемый С и С++ компиляторами
>очень сильно отличается.
2glassy: Ты кодом грозил, так приводи. А заодно напиши чем это ты таким таким его собираешь?
PS. Попытки пошутить кодом не считаю :)
 

glassy
13 Sep 2002 2:00 PM
Тех примеров у меня не осталось, но я для тебя напишу заново.

А пока постарайся мне объяснить, почему win2k server на моем PIII-850/256 (шина 133МГц, винты 40Мб/с, GF2) загружается 4 минуты, а линукс mdk re -- 35 секунд?
 

Andrey - bavait.susu.ac.ru
13 Sep 2002 2:18 PM
2glassy: 35 сек это вместе с X ?.
Знаешь а я могу сделать что "линукс mdk re", вообще не загрузится.
Тут все зависит от конфигурации ОС, не так ли.
 

Andrey - bavait.susu.ac.ru
13 Sep 2002 2:43 PM
Сейчас ради интереса даже перегрузился перевый раз за месяц.
WinXP P4-1600/255DDR IC35L040AVVA07-0 GF3
От первого пика динамика до окна регистрации 15 с.
До действительного окончания загрузки с регистрацией на 3-х Novell серверах, с подключением 15 сетевый дисков 33с.
Конецно это не сервер но всеже
 

glassy
14 Sep 2002 8:26 AM
не пи:%ди.
Р3-1000/512 SCSI RAID 3х18G IBM 10 000, GF2
за 80 сек.

Кстати, не просто с иксами, а с родным nvidia драйвером.
 

glassy
14 Sep 2002 8:35 AM
typedef struct _XY XY;
typedef struct _List List;
typedef List *Polygon;

struct _XY{
int x,y;
};

struct _List{
void *data;
List *next, *prev, *last;
};

void polygon_move(Polygon list_of_points, int dx, int dy){
List *l;
for(l=list_of_points;l;l=l->next){
XY*xy;
xy=(XY*)l->data;
xy->x+=dx;
xy->y+=dy;
}
}

$ gcc -S -O1

.file "ttt.c"
.version "01.01"
gcc2_compiled.:
.text
.align 4
.globl polygon_move
.type polygon_move,@function
polygon_move:
pushl %ebp
movl %esp, %ebp
pushl %ebx
movl 12(%ebp), %ebx
movl 16(%ebp), %ecx
movl 8(%ebp), %edx
testl %edx, %edx
je .L4
.p2align 2
.L6:
movl (%edx), %eax
addl %ebx, (%eax)
addl %ecx, 4(%eax)
movl 4(%edx), %edx
testl %edx, %edx
jne .L6
.L4:
movl (%esp), %ebx
leave
ret
.Lfe1:
.size polygon_move,.Lfe1-polygon_move
.ident "GCC: (GNU) 2.96 20000731 (Red Hat Linux 7.3 2.96-110)"
 

glassy
14 Sep 2002 8:38 AM
Если есть другие варианты, пожалуйста

class XY{
XY *next;
int x,y;
public:
void move(int, int);
XY* get_next(void);
};

class Polygon{
XY *points;
public:
void move(int, int);
};

XY* XY::get_next(void){
return next;
}

void XY::move(int dx, int dy){
x+=dx;
y+=dy;
}

void Polygon::move(int dx, int dy){
XY *tmp;
for(tmp=points; tmp;tmp=tmp->get_next()) tmp->move(dx, dy);
};

$ g++ -S -O1
да простят меня zdnet-овцы, но народ долден знать всю правду... :)
.file "yyy.cpp"
.version "01.01"
gcc2_compiled.:
.text
.align 4
.globl get_next__2XY
.type get_next__2XY,@function
get_next__2XY:
.LFB1:
pushl %ebp
.LCFI0:
movl %esp, %ebp
.LCFI1:
movl 8(%ebp), %eax
movl (%eax), %eax
popl %ebp
ret
.LFE1:
.Lfe1:
.size get_next__2XY,.Lfe1-get_next__2XY
.align 4
.globl move__2XYii
.type move__2XYii,@function
move__2XYii:
.LFB2:
pushl %ebp
.LCFI2:
movl %esp, %ebp
.LCFI3:
movl 8(%ebp), %eax
movl 16(%ebp), %ecx
movl 12(%ebp), %edx
addl %edx, 4(%eax)
addl %ecx, 8(%eax)
popl %ebp
ret
.LFE2:
.Lfe2:
.size move__2XYii,.Lfe2-move__2XYii
.align 4
.globl move__7Polygonii
.type move__7Polygonii,@function
move__7Polygonii:
.LFB3:
pushl %ebp
.LCFI4:
movl %esp, %ebp
.LCFI5:
pushl %edi
.LCFI6:
pushl %esi
.LCFI7:
pushl %ebx
.LCFI8:
subl $12, %esp
.LCFI9:
movl 8(%ebp), %eax
movl 12(%ebp), %edi
movl 16(%ebp), %esi
movl (%eax), %ebx
testl %ebx, %ebx
je .L8
.p2align 2
.L10:
subl $4, %esp
pushl %esi
pushl %edi
pushl %ebx
.LCFI10:
call move__2XYii
movl %ebx, (%esp)
call get_next__2XY
movl %eax, %ebx
addl $16, %esp
testl %ebx, %ebx
jne .L10
.L8:
leal -12(%ebp), %esp
popl %ebx
popl %esi
popl %edi
popl %ebp
ret
.LFE3:
.Lfe3:
.size move__7Polygonii,.Lfe3-move__7Polygonii
.ident "GCC: (GNU) 2.96 20000731 (Red Hat Linux 7.3 2.96-110)"
 

glassy
14 Sep 2002 9:01 AM
И общий смысл такой -- хочешь шашечки, используй С++, хочешь ехать, используй Си.
 

Andrey - bavait.susu.ac.ru
14 Sep 2002 12:52 PM
2glassy: я с тобой культурно разговаривал, да ? А про 'пи:%ди' не умеешь винду настроить так и скажи.
 

Qrot
14 Sep 2002 2:18 PM
glassy, 80 сек - это линух галимый? ламо! :))
а насчет кода - во-первых, скажи спасибо писателям gcc за свое счастливое детство, а во вторых ты явно не дочитал Страуструпа - по крайней мере главку про инлайны
 

glassy
14 Sep 2002 10:24 PM
2Andrey: сорьки, с никами запутался. Вы прямо как Ваалы раздваиваетесь.
Прежде всего, почему _я_ должен настраивать винду? Еще скажи, что за счет своего нерабочего времени. Или что я этому научиться должен. Спинным мозгом чую, что это ключ такой есть в реестре, BootingTime.

2Qrot: гы. Претенции к коду? А по-моему вполне обычный код на С++. Если ты прочтешь man gcc внимательнее, то узнаешь, что он автоматом ставит инлайны при уровне оптимизации -О3. Тогда действительно, инструкции практически идентичны. Но! Если начать оптимизировать, то сначала определить функции как инлайн, затем вообще отказаться от функций доступа к переменных, определив их как public, затем за ненадобностью заменить классы структурами, ну и в конце концов изменить расширение файла. Это очень простой пимер кода. Если честно, мне было очень сложно сделать не-си подобный код на С++. Как тебе такой вариант -- ты приводишь спецификацию класса и его код на С++, я делаю аналог на Си, и сравниваем результаты.

 

glassy
14 Sep 2002 10:28 PM
2Qrot: 80 сек -- это WinXP, но если честно, не знаю, от включния до окна логина или от пика до окна логина.
 

Qrot
14 Sep 2002 11:01 PM
glassy, XP за 80 секунд - я незнаю как ты этого добился.. у меня 2К дома грузится меньше, а на работе загрузка ХР занимает примерно сек 15 от выбора ХР из меню загрузчика. так что про "пи%ди" - к тебе в первую очередь.
 

Qrot
14 Sep 2002 11:19 PM
glassy, я не хочу читать man gcc - не внимательнее ни вообще никак :)
вот тебе - http://qrot.by.ru/files/cpp-glassy-1.zip
так же советую обратить внимание на линк в колонке Картинки на qrot.by.ru (здесь не пишу т.к. линк выглядит неприлично)
 

Qrot
15 Sep 2002 1:09 PM
для 14 сентября, 2002, 23:19 - Qrot
s/линк в колонке/последний линк в колонке
 

glassy
15 Sep 2002 4:35 PM
2Qrot: ты не показал мне ничего нового, в то время как я просил свой вариант.
Как тебе такой вывод: плохо написанная программа на Си уступает по производительности на 50% эталон, в то время как средне написанная программа на С++ -- на 100%. Грубо прикидывая соотношение и плодовитость С/С++ программистов приходим к выводу, что процентов 95 кода реально сосут.

PS а асм в линуксе красивее...
 

glassy
15 Sep 2002 4:37 PM
гы, еще 6 постингов и будет полтонны :)
 

Qrot
15 Sep 2002 5:25 PM
2glassy: ничего нового, значит.. марш смотреть урок №2 - если ничего нового, значит ты его не видел.
 

Qrot
15 Sep 2002 6:37 PM
что бы не выглядеть совсем уж авторитарным, поясню - смотри test-c-func.c и сравнивай с test-cpp.cpp. убедись, что это суть одно и тоже, потом смотри на asm и ищи различия в реализации. различий ты ессно не найдешь. после этого желательно поискать ошибки в приведенном тобой коде (помнишь, я тебе про картинку писал? :)) когда найдешь ошибку - пиши ее сюда, иначе разговор бессмысленный получается.
 

Qrot
16 Sep 2002 12:44 AM
2glassy: ладно, хочешь спецификацию и реализацию класса на плюсах? ОК.

что нужно: вычисление и вывод факториала на экран. переполнение не анализируется

реализация:

#include <cstdio>

template <unsigned n>
struct factorial {
enum { value = n * factorial<n-1>::value };
};

template<>
struct factorial<0>
{
enum { value = 1 };
};

int main()
{
printf("%d\n", factorial<5>::value);
return 0;
}

/* за <cstdio> не пинать, так проще */

строка компиляции
cl -O1 -Fa fact.cpp
инструкций на вычисление факториала - 1 (одна)

ну как, glassy? смогешь на C вычисление факториала уложить в 1 инструкцию? :))

да, разумеется, я так же хотел бы увидеть ответ на мой предылущий пост :)
 

glassy
16 Sep 2002 6:14 AM
а не проще ли было cout << 120?
 

Alexey
16 Sep 2002 7:12 AM
To glassy:
> Алексей, если ты и в самом деле считаешь именно эти три
> основных свойства ООП самыми главными отличиями С++ от Си, и
Ты сам написал "три основных свойства ООП", и так считаю не только я один, а если бы утруждал себя чтением нормальных книг, то знал бы что так считает довольно много людей. Мы вообще-то заводили с тобой разговор именно о том, что С не является ОО языком программирования. Вначале ты пытался что возразить, но не смог привести никаких возражений и сьехал непонятно на что.

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

Alexey
16 Sep 2002 7:14 AM
To glassy:
> Как тебе такой вывод: плохо написанная программа на Си
> уступает по производительности на 50% эталон, в то время как
> средне написанная программа на С++ -- на 100%. Грубо
> прикидывая соотношение и плодовитость С/С++ программистов
> приходим к выводу, что процентов 95 кода реально сосут
Ты знаешь я больше верю Страуструпу, а у него таких выводов не видел, скорее наоборот, да впрочем я тебе писал уже, да видно зря
 

Alexey
16 Sep 2002 7:20 AM
To glassy:
> а не проще ли было cout << 120?
Тебе вообще-то приводилась в пример работа компилятора именно в плане генерируемого кода.
 

Alexey
16 Sep 2002 7:29 AM
To glassy:
> Прежде всего, почему _я_ должен настраивать винду? Еще скажи,
> что за счет своего нерабочего времени. Или что я этому
> научиться должен.
Ты наверное Linux то тоже не настраиваешь и работать с ним научился прямо с рождения, в крови наверное сидело. А учиться всему нужно.
 

glassy
16 Sep 2002 7:38 AM
2Alexey: Страуструп, а потом и я, писал, как реализуется наследование, полиморфизм и инкапсуляция. Прими как данность, Си достаточно ОО язык. Если ты этого не хочешь признать, опять же, скилл у тебя нулевой.

Далее, я заявил, что если в системе не предвидется исключительных ситуаций, и не требуется перегрузка операторов, то писать надо на Си. Затем я сказал, что поскольку вешеперечисленными советами и технологиями не пользуются, 95% программ (грубо) сосут по производительности.

2Qrot: где спецификация на класс, или темплеты уже имеются во всех официально ОО-языках? А то, что ты привел как пример, легко вписывается в рамки препроцессора. Чем С++ и является.
 

Alexey
16 Sep 2002 7:46 AM
To glassy:
> легко вписывается в рамки препроцессора. Чем С++ и является.
К твоему сведению С++ все же компилятор, а не препроцессор, т.к. делает гораздо более сложные вещи, чем простую обработку текста.

> а потом и я, писал, как реализуется наследование, полиморфизм
> и инкапсуляция. Прими как данность, Си достаточно ОО язык.
> Если ты этого не хочешь признать, опять же, скилл у тебя
> нулевой.
Тебе писали как реализуются эти вещи, только для того чтобы ты понял как они работают и что их использование не приводит к снижению производительности, но как говорится "Глядит в книгу видит ..."

 

glassy
16 Sep 2002 7:47 AM
2Alexey: когда у меня был выбор, на чем реализовать меанный блёр, просто на основе документации выбрал связку linux+gtk+gdk+imlib на Си, потом забил на gtk в пользу ecore+evas, короче, жизнь только улучшается.

[ОТ] А правда что из-за того, что вин* не кэшируют данные с СД, при активном считывании одного и того же метра на хорошем диске с приличным числом оборотов диски в конце концов рвутся?
 

Alexey
16 Sep 2002 7:56 AM
Ну что же вот и до кода glassy дело дошло.

class XY{
XY *next;
int x,y;
public:
void move(int, int);
XY* get_next(void);
};

class Polygon{
XY *points;
public:
void move(int, int);
};

Я так понимаю, что XY это объект точка. Но извините меня, каким образом у объекта точка может быть указатель на другую точку. А только тогда, когда точка входит в полигон, но извините, точки же не всегда входят в полигоны? Да это ерудна glassy так удобнее потом список организовать.

Извини glassy, но этот код только опять говорит о твоей безграмотности, и ни о чем более. Не надо мешать мухи с котлетами, если у тебя есть объект точка, то он и должен обладать только атрибутами точки. Если у тебя есть список, то он и должен быть списком. А Polygon должен был содержать не XY*, который ни о чем не говорит, а хотя бы list<XY*>. Тогда людям работающим впоследствии с твоим кодом будет гораздо легче.

P.S. А ты у нас похоже всегда работу со списком (вставку, удаление) в каждом алгоритме явно прописываешь. Так вообще-то для этих вещей уже давно библиотеки разработаны. Ну я конечно понимаю, что ты наверное против использования библиотек, так как опять же их писали другие программисты, у которых скил нулевой, а ты у нас пирамидальную сортировку и работу с B-деревьями прямо из головы пишешь. Может быть надо быть более самокритичным к себе?
 

Alexey
16 Sep 2002 7:59 AM
To glassy:
> меанный блёр, просто на основе документации выбрал связку
> linux+gtk+gdk+imlib на Си, потом забил на gtk в пользу
> ecore+evas, короче, жизнь только улучшается.
Извини не знаю, что такое "меанный блёр", ты когда с людьми разговариваешь постарайся по русски говорить. И как же ты ВЫБРАЛ, что потом ЗАБИЛ?
 

glassy
16 Sep 2002 8:54 AM
медианный блёр -- Median Blur -- предмет ЦОС -- йифровая обработка сигналов, 4-й курс. Состоит в присваивании точке изображения среднего значения из 9 значений ближайших точек исходного изображения. Виндозные ScanLine сосали тогда (как сейчас дела обстоят не знаю), использовать raw массив rgbrgbrgb намного удобнее. Затем я забил на imlib в пользу imlib2, предоставляющую данные как int (или DATA32) массив argbargbargb.

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

Работу со списками... либы.... Если в либе списков нет указателя на последный элемент, то она сосет по определению. Если в некоторой программе необходима явная сортировка, программа опять же, должна быть переписана.
Вместо пирамидальной сортировки всегда можно использовать быструю, благо это есть POSIX-функция qsort(). С бинарными деревьями я не работаю, поскольку свет клином на них сходится лишь для новичков (или у тебя страх перед деревьями с бОльшим числом ветвей? :)).
Для работы сос списками юзаю такой апи доставшей вас либы:
Evas_List *evas_list_append (Evas_List *list, void *data);
Evas_List *evas_list_prepend (Evas_List *list, void *data);
Evas_List *evas_list_append_relative (Evas_List *list, void *data, void *relative);
Evas_List *evas_list_prepend_relative (Evas_List *list, void *data, void *relative);
Evas_List *evas_list_remove (Evas_List *list, void *data);
Evas_List *evas_list_remove_list (Evas_List *list, Evas_List *remove_list);
void *evas_list_find (Evas_List *list, void *data);
Evas_List *evas_list_free (Evas_List *list);
Evas_List *evas_list_last (Evas_List *list);
Evas_List *evas_list_next (Evas_List *list);
Evas_List *evas_list_prev (Evas_List *list);
void *evas_list_data (Evas_List *list);
int evas_list_count (Evas_List *list);
void *evas_list_nth (Evas_List *list, int n);
Evas_List *evas_list_reverse (Evas_List *list);

/* FIXME: add:
* api to add find, del members by data, size not just string and also
* provide hash generation functions settable by the app
*
* do we really need this? hmmm - let me think... there may be a better way
*/
Evas_Hash *evas_hash_add (Evas_Hash *hash, const char *key, void *data);
Evas_Hash *evas_hash_del (Evas_Hash *hash, const char *key, void *data);
void *evas_hash_find (Evas_Hash *hash, const char *key);
int evas_hash_size (Evas_Hash *hash);
void evas_hash_free (Evas_Hash *hash);
void evas_hash_foreach (Evas_Hash *hash, int (*func) (Evas_Hash *hash, const char *key, void *data, void *fdata), void *fdata);
 

Alexey
16 Sep 2002 10:47 AM
To glassy:
> Вместо пирамидальной сортировки всегда можно использовать
> быструю, благо это есть POSIX-функция qsort(). С бинарными
Я думаю, что мог и сам бы догадаться, что qsort(), как раз не всегда подходит, если существуют другие методы. К примеру, у нее очень плохая производительность на частично сортированной последовательности. Наилучшие рез-ты она показывает, когда последовательность далека от упорядоченной.
Небольшая цитата из Кнута
"...Но каков наихудший случай для алгоритма Q? Существуют ли какие-нибудь исходные файлы, обрабатывать которые этим алгоритмом не эффективно? Ответ несколько обескураживает: если исходный файл уже упорядочен, а именно K1<K2<...<Kn, то каждая операция "разделения" становится почти бесполезной, так как подфайл сводится к одному элементиу! Значит, в этой ситуации (коотрая должна быть самой простой для сортировки) быстрая сортировка превращается в отнюдь не быструю. Время ее работы становится пропорциональным N^2, а не NlogN..."

"...С другой стороны, быстрая сортировка эффективна лишь в среднем; в наихудшем случае ее время работы пропорционально N^2. Пирамидальная же сортировка обладает тем интересным свойством, что для нее наихудший случай не на много хуже среднего.
...
таким образом, независимо от распределения исходных данных программы Н не займет более 18N[logN]+38N единиц времени. Пирамидальная сортировка - первый из рассмотренных нами до сих пор методов сортировки, время работы которого ЗАВЕДОМО имеет порядок NlogN."
[Кнут. Искусство программирования т.3]

> деревьями я не работаю, поскольку свет клином на них сходится
> лишь для новичков (или у тебя страх перед деревьями с бОльшим
> числом ветвей? :)).
Я так понимаю, что ты вообще с деревьями не работаешь, иначе знал бы что (далее опять цитата):

"B-деревья. В 1970 г. Р.Бэйер и Э Мак-Крэйт [неопубликовано] предложили новый подход к внешнему поиску посредством сильно ветвящихся деревьев. Их идея основывается на подвижности нового типа структур данных, названных B-деревьями, и позволяет производить поиск или изменять большой файл с "гарантированной" эффективностью в наихудшем случае, используя при этом сравнительно простые алгоритмы.
B-деревом порядка m называется дерево, обладающее следующими свойствами:
i) Каждый узел имеет не более m сыновей.
ii) Каждый узел, кроме корня и листьев, имеет не менее m/2 сыновей.
iii) Корень, если он не лист, имеет не менее 2 сыновей.
iv) Все листья расположены на одном уровне и не содержат информации.
v) Нелистовой узел с k сыновьями содержит k-1 ключей."
[Кнут. Искусство программирования т.3
Параграф 6.2.4. Сильно ветвящиеся деревья]

Поэтому, прежде чем делать выводы о том что для меня сошелся свет клином на бинарных деревьях и "страх перед деревьями с бОльшим числом ветвей" нужно самому быть более образованным в структурах данных которые для любого программиста являются БАЗОВЫМИ.
 

glassy
16 Sep 2002 11:08 AM
базовые не базовые, но пирамидальную сортировку я по остаточным знаниям написал бы.
 

Qrot
16 Sep 2002 11:10 AM
2glassy

> а не проще ли было cout << 120?
не читабельно. где реализация на C?

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

> А то, что ты привел как пример, легко
> вписывается в рамки препроцессора. Чем С++ и является.
ну, ты пока погоди выводы делать что чем является.. мы к этому подойдем исчо.
 

glassy
16 Sep 2002 11:11 AM
2Alexey: в каком месте своего када я долен был бы использовать сортировку?
 

glassy
16 Sep 2002 11:12 AM
Удивительно, да? -- 600 кил кода и ни одной сортировки ;)
 

Qrot
16 Sep 2002 11:13 AM
> Страуструп, а потом и я, писал,
LOL! действительно, почему не Наполеон? :))
 

glassy
16 Sep 2002 11:14 AM
2Qrot: гы, а если мне факториал не константы нужен, тогда что и как? Еще раз говорю, темплеты -- удел препроцессора. ничего кроме как push 120; call printf другого кода сгенерено не было.
 

glassy
16 Sep 2002 11:25 AM
да идите вы все нафиг, достали люзеры и ламеры, только спать не даете.
 

Alexey
16 Sep 2002 11:31 AM
To glassy:
> да идите вы все нафиг, достали люзеры и ламеры, только спать
> не даете.
Да ладно ты, мы же так по доброте душевной твоим образованием занимаемся.

> в каком месте своего када я долен был бы использовать
> сортировку?
Действительно все что не использовано в твоем каде, не достойно даже упоминания. Ты бы сразу всем сказал что ты написал очень замечательную программу, НИКАКИЕ возражения не принимаются, все кто сомневаются в замечатльности этой программы, просто программисты с нулевым скилом (со страхом перед деревьями с бОлишим числов ветвей).
Я вообще-то, вступая в дискуссию, надеялся на адекватную реакцию, а так ты скоро до прямой грубости дойдешь
 

Qrot
16 Sep 2002 11:31 AM
2glassy: конгениально. ничего подобного на C ты не приведешь, как я понял.
что мы имеем в результате? код, сгенеренный компилятором С++ в большинстве случаев совпадает с кодом от компилятора С (см. cpp-glassy-1.zip и cpp-glassy-2.zip), а в некоторых - и наголову превоходит его (см. пример с факториалом ниже). возражения, пожалуйста..
 

Qrot
16 Sep 2002 11:33 AM
2glassy: о, косвенное признание поражения! :)) ну давай, проспись, а потом в бой с новыми силами :)
 

glassy
16 Sep 2002 11:41 AM
давай, давай, пока я невыпавшийся и злой. Покажи свой код, и его, ох как я его... раскритикую нафиг. Алексея тоже касается.
Кстати, что ты там во втором уроке показать хотел? Мания непонятого величия? Словами скажи, чего я там по-твоему не увидел.
(поспорим, что на втоорую просьбу ответишь, а код свой не покажешь?)
 

Qrot
16 Sep 2002 11:45 AM
а зачем мне свой код показывать.. я им не кичусь и кумира из себя не делаю. в отличие от.. да, кстати - открывать свои сорсы не имею права :))
 

glassy
16 Sep 2002 11:48 AM
не, блин, уже 4-й месяц пытаюсь хоть какие-то недостатки найти, уже и на прямы оскарбления практически перешел, ан нет, не имеют они претензий к коду моего када...
 

Qrot
16 Sep 2002 11:58 AM
во втором уроке ты должен был узреть, что твой сишный код на самом деле не эмулирует ОО, как ты говоришь (то есть твой сишный код твой же плюсовый код не идентичны). код на С, с действительной эмуляцией ОО и был приведен во 2-м уроке - test-c-func.c. как ты мог видеть - вот это действительно маздай и ацтой, потому что получился именно тот листинг, которые тебе так не понравился у плюсов. это такое небольшое подтверждение слов Страуструпа о ООЯП, приведнных Алексеем пару тройку страниц назад - ты же их оспорил вроде как...
 

glassy
16 Sep 2002 11:59 AM
вот unreal tournament 2003 точно на Си написана, спинным мозгом чую :)
 

Qrot
16 Sep 2002 11:59 AM
glass, я код твоего када и в глаза не видел :)) и видеть не хочу, если честно - мне на работе хватает наследия темного прошлого..
 

glassy
16 Sep 2002 12:06 PM
Да ты только посмотри на эту красоту! :)))
 

Qrot
16 Sep 2002 3:07 PM
не хочу :)) вряд ли я смогу узнать оттуда что-нибудь новое, согласись :)
 

glassy
17 Sep 2002 7:21 AM
2Qrot: про www.shadowness.com знаешь?
 

Qrot
17 Sep 2002 3:09 PM
2glassy: спасибо, наконец-то нашел валпапы под свое разрешение :) некоторые очень даже ничего.
а к чему ты об этом?
 

glassy
17 Sep 2002 3:23 PM
"вряд ли я смогу узнать оттуда что-нибудь новое" ты конечно знаешь про photoshop и 3Dsm, но эти картинки видишь впервые.

Также, ты знаешь про svg+js и flash, но о том, как похожие вещи будут писаться на ebits2, да и как будет реализована сама эта либа -- не знаешь. Все просто.
 

Qrot
17 Sep 2002 5:23 PM
мне до лампады "как похожие вещи будут писаться на ebits2, да и как будет реализована сама эта либа". собсно, как бы там это не писалось, ничего принципиально нового там не будет. мне гораздо интересней посмотреть как сделали ту или или иную фичу на boost.org, чем разбираться с либой от вындовьсь манагера, который даже зарелизить толком не могут уже лет 5 как!
а картинки в хозяйстве пригодятся.. кстати из них только одна осталась - остальные пришлось стереть :)
 

glassy
17 Sep 2002 7:26 PM
возвращаюсь к вопросу о сортировках.
Есть у меня одна. В hatch.c
Пузырьковая.
Не с проста.
Любая другая там далека от эффективности.
А вы "пирамидальная", "пирамидальная"...

"который даже зарелизить толком не могут уже лет 5 как"
не для релиза его пишут. Что это за привычка такая: хотеть пользоваться тем, что программеры в свое удовольствие делают :)
 

Qrot
17 Sep 2002 8:03 PM
под "зарелизить" понимается некая точка, которую можно поставить и сказать - вот здесь сделано все для выполнения таких то условий. а если такую точку разработчики поставить не могут - значит нихрена не сделано в понимании прежде всего самих разработчиков..
 

glassy
18 Sep 2002 5:51 AM
2Qrot: на #edevelop был разговор, дескать (под влиянием The Jetson-ов) возможно будет забацать функцию show_speech("hahahaha") или show_speech("pants on!") которая покажет голову робота, который будет открывать рот под проигрываемый вав-файл. Мне ответили, что это плохая идея, пусть это будет сексапильная девушка, выговарювающая "pans on" c австралиским акцентом. На что я ответил, чот если это будет девушка, то она будет говорить "pants off", им это у нас разрешено :) Минут через 10 проснулся Our Fearless Leader и сказал, что на самом деле он задумал еще лучше. Я не знаю, что может быть лучше этого, но на практике он никогда не обманывает. ;)
 

Бабки
18 Sep 2002 11:38 AM
2glassy: пацаны с #developers какой месячный доход имеют, если не секрет?
 

Qrot
18 Sep 2002 12:08 PM
Бабки эт тож я :)
 

glassy
18 Sep 2002 12:26 PM
сам ты #developers
 

Qrot
18 Sep 2002 1:21 PM
мля ну с #develop, ты же понял. так какой у них доход?
 

glassy
18 Sep 2002 1:42 PM
точно #develop? А может все-таки #edevelop?
 

Qrot
18 Sep 2002 1:56 PM
ну чего ты пристал к старому больному человеку с плохим зрением?
не хочешь отвечать - так и скажи.
 

glassy
18 Sep 2002 1:59 PM
в чем проблема-то? Зайди и спроси :)
 

Qrot
18 Sep 2002 2:43 PM
ага.. прижет хрен с горы и начнет спрашивать какой у вас доход..
 

glassy
18 Sep 2002 3:22 PM
Всего там человек 20 +/-5, 4 имеют супругов, 3-е преподают, пара фрилансеров, 1 студент, 2-3 phd-студента, один админ, остальные молчат. Самый главный имеет пентхаус и устраивает по 2 вечеринки на уикендах. :)
 

Qrot
18 Sep 2002 8:11 PM
вот-вот, большинство материально могут себе позволить писать ради искусства, а не ради заработка. особенно те кто молчат, имхо. этот, с пентхаусом, опять же..
а ты кто - нищий гений? никогда не задумывался почему опенсорс зародился и имеет большинство сторонников именно в сытых странах развитого капитализма? так же как идеи коммунизма находили отклик у российской обеспечнной интеллигенции, а в наше время - занимают умы студентов престижнейших западных университетов..
 

Skull - sibskullmail.ru
19 Sep 2002 5:18 AM
2Qrot: очень странно, но более обеспеченные граждане USA делают для развития OSS гораздо меньше, чем европейцы. Может дело все-таки не в сытости, а в психологии?
 

glassy
19 Sep 2002 7:27 AM
2Skull: кстати да.
 

Alexey
19 Sep 2002 6:54 PM
To glassy:
> возвращаюсь к вопросу о сортировках.
> Есть у меня одна. В hatch.c
> Пузырьковая.
> Не с проста.
> Любая другая там далека от эффективности.
> А вы "пирамидальная", "пирамидальная"...
Вот ты би и рассказал, что у тебя там за данные, что для них самой эффективной является пузырьковая. Тогда можно поговрить, а в hatch.c лезть самому все равно не охота.
Я пока могу предположить что они уже упорядочены и проходов по ним из-за этого происходит немного, или их объем настолько маленький, что время работы алгоритма не имеет знаечения. Других случаев для пузырьковой сортировки пока в голову не приходит.
 

glassy
20 Sep 2002 7:50 AM
2Alexey: правильно.
1. Список
2. в 95% пустой
3. чаще всего 2 элемента, практически никогда больше 10.

теоретичеки имеем:
1. такты на подсчет числа элементов
2. такты на маллок
3. такты на заполнение нового массива
4. для использования библиотечной функции qsort() пишем отдельную функцию для сравнения
5. такты на построение нового отсортированного списка на основе отсортированного массива
6. удаление прежнего списка, и free()

Вот такой вот "исторический интерес".
 

Qrot
20 Sep 2002 11:31 AM
glassy, а сразу при вставке отсортированный список делать не, низя?
 

glassy
20 Sep 2002 2:03 PM
мона, дазе не мона, а нуна :)

Это был багфикс в свое время...
 

 

← июль 2002 7  8  9  10  11  12  13  14  16 сентябрь 2002 →
Реклама!
 

 

Место для Вашей рекламы!