adamix писал: Исправлять надо старый софт, а не новый.
То есть криворукость современных программеров мы компенсируем внесением хаков в старый софт? Отличный подход! Не хочешь в Майкрософт пойти поработать?
Цитата:
adamix писал: Да, curl используется именно для скачки ресурсов с сервера/стороннего веб-сервера
Вот не надо мне через слеш писать. Я прекрасно знаю, как используется курл для скачки ресурсов с веб и фтп серверов и сам его давно юзаю. Мне не понятно, как его привязать к download window, которое открыто во время сигнона и действует по своему протоколу. По моему опыту курления выходит, что понадобится низкоуровневая работа, и чем она проще работы на стандартных сокетах - неясно. Гораздо проще повысить скорость даунлоада, увеличив размер пакетов или частоты их посылки сервером, хотя бы на время. Ну ладно, это уже детали.
Цитата:
adamix писал: SDL - без него оно под всякими макосями будет только с костылями стартовать.
А как же тогда, интересно, квака работала под макосью безо всяких SDL? Или лучше так - в SDL находится какой-то особый код, который никоим образом выдрать/воссоздать самому нельзя?
Цитата:
adamix писал: Не вижу ничего плохого в обновлении версии либы - как правило там только фиксят баги и правят производительность.
Разумеется, фиксят баги. И после этих фиксов отваливаются фичи, которые у тебя уже работали. И нужно спешно писать багрепорт авторам, и две недели ждать ответа "вы пробовали выключить и снова включить", и потом еще две недели ждать исправленной версии. Меня в своё время научили одному золотому правилу: "Работает - не трожь!". А этих, которые версии либов обновляют, очевидно, не научили, а жаль.
XaeroX писал: То есть криворукость современных программеров мы компенсируем внесением хаков в старый софт? Отличный подход! Не хочешь в Майкрософт пойти поработать?
Дядя, а ничего, что мы должны идти вперед? А не оставлять старые глюки для совместимости со старым софтом.
Цитата:
XaeroX писал: А как же тогда, интересно, квака работала под макосью безо всяких SDL? Или лучше так - в SDL находится какой-то особый код, который никоим образом выдрать/воссоздать самому нельзя?
Она там не очень работала. А в новых макосях совсем не работает. Спорный вопрос - свои костыли или чьи то чужие. Если есть желание и возможность поддерживать свои - тогда да, можно что то свое наваять. Если нет - можно использовать SDL, которая ничуть не хуже.
Цитата:
XaeroX писал: Разумеется, фиксят баги. И после этих фиксов отваливаются фичи, которые у тебя уже работали. И нужно спешно писать багрепорт авторам, и две недели ждать ответа "вы пробовали выключить и снова включить", и потом еще две недели ждать исправленной версии. Меня в своё время научили одному золотому правилу: "Работает - не трожь!". А этих, которые версии либов обновляют, очевидно, не научили, а жаль.
Не знаю, у меня в ioquake3 ничего не отваливалось. Принцип "Работает - не трожь" тут не очень работает, ибо например скорость libjpeg по сравнению со старыми версиями увеличилась, а так же были пофикшены 0-day уязвимости в библиотеке.
adamix писал: А не оставлять старые глюки для совместимости со старым софтом.
Да я давно понял, что линуксоидам срать на совместимость. Вспомнить хотя бы бинарную несовместимость gcc 2x и 3х. Когда-нибудь это им аукнется, имхо. А тем временем майкрософт продолжает разруливать dll hell, и вполне успешно.
Цитата:
adamix писал: Если нет - можно использовать SDL, которая ничуть не хуже.
Только тащит за собой мегабайт лишнего кода? Если нет желания и возможности поддерживать свои - разберись в чужих и возьми только нужное. А если мозгов нет ни на что более сложное, чем прикручивание готовой либы, так может тово... вон из профессии(с)?
Цитата:
adamix писал: ибо например скорость libjpeg по сравнению со старыми версиями увеличилась
В смысле, квака стала грузиться на 10 миллисекунд быстрее? Это бесспорно важное достижение, ради него стоит потратить время на обновление либы и пару дней/недель/месяцев на проверку, всё ли работает по-старому.
XaeroX писал: Да я давно понял, что линуксоидам срать на совместимость. Вспомнить хотя бы бинарную несовместимость gcc 2x и 3х. Когда-нибудь это им аукнется, имхо. А тем временем майкрософт продолжает разруливать dll hell, и вполне успешно.
В линуксе stable api non-sense, мне это тоже не очень нравится, но надо идти дальше.
Цитата:
XaeroX писал: Только тащит за собой мегабайт лишнего кода? Если нет желания и возможности поддерживать свои - разберись в чужих и возьми только нужное. А если мозгов нет ни на что более сложное, чем прикручивание готовой либы, так может тово... вон из профессии(с)?
Мегабайт он и у тебя мегабайт получится, если тебе нужен весь функционал SDL. Насколько я помню в ioquake3 специально засунули SDL изза всех его фишечек, чтоб не тащить кучу своих костылей для каждой платформы. Зато теперь можно в кваку на кофеварке играть, подергивая выключатель для стрельбы.
Цитата:
XaeroX писал: В смысле, квака стала грузиться на 10 миллисекунд быстрее? Это бесспорно важное достижение, ради него стоит потратить время на обновление либы и пару дней/недель/месяцев на проверку, всё ли работает по-старому.
В ioquake либы обновляют только при релизе и тестить их не обязательно. За тебя юзеры убунты потестили.
adamix писал: Зато теперь можно в кваку на кофеварке играть, подергивая выключатель для стрельбы.
Только постоянно что-нибудь отваливается, и приходится, матерять, лезть в сорцы SDL и пытаться понять, что же именно не так.
Цитата:
adamix писал: За тебя юзеры убунты потестили.
Я имел в виду - тестить не саму либу, а твой код, использующий либу. Ну например, юзал ты 0 вместо MYLIB_ZERO, а в новой версии дефайн изменили, MYLIB_ZERO стал равен -1, и всё изломалось. Это, конечно, грубый пример, но принцип такой.
XaeroX писал: Только постоянно что-нибудь отваливается, и приходится, матерять, лезть в сорцы SDL и пытаться понять, что же именно не так.
Ничего нигде не отвалилось ниразу. На нескольких платформах. Что я делаю не так?
Цитата:
XaeroX писал: Я имел в виду - тестить не саму либу, а твой код, использующий либу. Ну например, юзал ты 0 вместо MYLIB_ZERO, а в новой версии дефайн изменили, MYLIB_ZERO стал равен -1, и всё изломалось. Это, конечно, грубый пример, но принцип такой.
Дык, либу надо уметь юзать. Пример грубый, но прекрасно показывает как многие пишут код. Поэтому у них все отваливается с обновлениями.
adamix писал: Исправлять надо старый софт, а не новый.
Исправлять надо ГЛЮЧНЫЙ софт. Позиция "старый софт плох потому что он старый" заведомо ущербна. Старый софт зачастую гораздо стабильнее и удобнее нового.
Цитата:
adamix писал: Дядя, а ничего, что мы должны идти вперед?
Мы - это кто? И кому должны? Большинство изменений в линукс вносится просто потому что так захотелось их авторам. Вместо того чтобы заняться чем-то реально полезным они пишут свистелки и перделки. Типа шестимерного рабочего стола.
Цитата:
adamix писал: Она там не очень работала
Чисто для справки - Кармаки сидят под макосями. Уж не хочеш ли ты сказать, что он чисто по дружбе с Билли запилил под винду такую версию, которая лучше чем под макось.
Цитата:
adamix писал: Зато теперь можно в кваку на кофеварке играть, подергивая выключатель для стрельбы.
Это и есть самое натуральное вредительство, за которое полагается в лучшем случае - расстрел. За призрачную возможность совершенно излишнего и никому не нужного функционала вы изломали готовый стабильный продукт. Это всё равно что изготовить шариковую ручку, которая будет писать на глубине в 100 метров и проталкивать её в массовое пользование.
Дядя Миша писал: Исправлять надо ГЛЮЧНЫЙ софт. Позиция "старый софт плох потому что он старый" заведомо ущербна. Старый софт зачастую гораздо стабильнее и удобнее нового.
В том случае старый - глючный. Ибо не работает.
Цитата:
Дядя Миша писал: Мы - это кто? И кому должны? Большинство изменений в линукс вносится просто потому что так захотелось их авторам. Вместо того чтобы заняться чем-то реально полезным они пишут свистелки и перделки. Типа шестимерного рабочего стола.
Не знаю насчет перделок. Есть куча интересных продуктов без перделок, аля openoffice/vim/codeblocks/monodevelop/kvirc/perl6.
Цитата:
Дядя Миша писал: Чисто для справки - Кармаки сидят под макосями. Уж не хочеш ли ты сказать, что он чисто по дружбе с Билли запилил под винду такую версию, которая лучше чем под макось.
Ну в макоси часто бывают изменения, после которых софт перестает компилироваться, например.
Цитата:
Дядя Миша писал: Это и есть самое натуральное вредительство, за которое полагается в лучшем случае - расстрел. За призрачную возможность совершенно излишнего и никому не нужного функционала вы изломали готовый стабильный продукт. Это всё равно что изготовить шариковую ручку, которая будет писать на глубине в 100 метров и проталкивать её в массовое пользование.
adamix писал: Пример грубый, но прекрасно показывает как многие пишут код.
А ты, надо полагать, обладаешь потрясающей внимательностью, всегда строго сверяешься с документацией и никуда не торопишься? Человеку свойственно ошибаться тащемта, а когда горят сроки (а это обычное явление) и надо говнять по-быстрому - происходит именно так, как я описал.
adamix
Основная проблема всех этих либ, их вес. Уж жутко много они весят (большая часть как раз составляет незаюзанный функционал), а ксаш проект маловесный, ДМ там за каждый байт боритсо .
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
adamix писал: Ну в макоси часто бывают изменения, после которых софт перестает компилироваться, например.
Ну это же говняная ось получается, например? Почему в винде, например, можно до сих пор писать софт, который запускается, например, под 95 виндами? Я уж не говорю о компиляции.
XaeroX писал: Ну это же говняная ось получается, например? Почему в винде, например, можно до сих пор писать софт, который запускается, например, под 95 виндами? Я уж не говорю о компиляции.
И под линуксом можно писать софт который запустится на убунту 1.04.