LINUX.ORG.RU

Как убедить тимлида притянуть в проект Boost

 , , ,


2

8

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

Есть проект. Почти весь написан на C++, GUI + очень малая часть функционала написана на C#. Целевая платформа: оффтопик.

Конечно же есть библиотека с утилитами всякими. И вот там тимлид сидит и пишет свои костыли для работы с файловой системой: итерация по директории, удаление файла и т.д.

Я никак не могу, зачем он это делает (NIH?), и стараюсь убедить его, что мол есть же Boost.Filesystem, юзай его. Ответ таков: Boost тяжёлый, тянуть не хочется да и вообще лень. А вот мои костыли это просто лучшее решение. И это после того, как я регулярно в его костылях правлю баги какие-нибудь.

И это касается не только Filesystem. Он ещё своё жалкое подобие lexical_cast впихнул и много чего ещё...

Откуда такая может быть ненависть к Boost? И как с этим можно бороться? Кто что может посоветовать? Может у кого есть свои истории успеха.

Сменить тимлида\компанию не предлагать.

Ответ на: комментарий от EXL

ну, может там не всё. я не знаю, зачем тогда велосипеды, если стандарт туда уже завезли (в маздай стандарты С++ довозят на оленях, через несколько лет после их выхода).

Iron_Bug ★★★★★
()
Ответ на: комментарий от Iron_Bug

я не знаю, зачем тогда велосипеды, если стандарт туда уже завезли

Я не знаю, что ТС называет велосипедами там, ведь код он не показывал. Вероятно, тимлид WinAPI там подвернул просто, а тянуть Boost счёл нецелесообразным ради двух функций.

EXL ★★★★★
()
Ответ на: комментарий от EXL

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

Iron_Bug ★★★★★
()
Последнее исправление: Iron_Bug (всего исправлений: 1)
Ответ на: комментарий от EXL

Абсолютно верно, WinAPI, обёрнутое ifdef для Вин платформы. И потихоньку начинает появляться своя какая-то реализаиция для linux. Только, к сожалению, не двух функций.

zamazan4ik ★★
() автор топика
Последнее исправление: zamazan4ik (всего исправлений: 1)
Ответ на: комментарий от zamazan4ik

WinAPI, обёрнутое ifdef для Вин платформы. И потихоньку начинает появляться своя какая-то реализаиция для linux. Только, к сожалению, не двух функций.

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

тут уже вопрос даже не в оптимальности, а вообще в возможности поддерживать и развивать такой код дальше.

Iron_Bug ★★★★★
()
Ответ на: комментарий от Iron_Bug

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

zamazan4ik ★★
() автор топика
Ответ на: комментарий от Iron_Bug

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

Ерунду пишешь. У WinAPI отличная обратная совместимость, а разница между версиями документирована.

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

Это говорит только о тупизне разработчика.

Опровергнуть меня легко - давай в студию WinAPI вызов из kernel/user/winsock со сломанным поведением.

LamerOk ★★★★★
()
Ответ на: комментарий от LamerOk

Опровергнуть меня легко - давай в студию WinAPI вызов из kernel/user/winsock со сломанным поведением.

я тебе не дам код, потому что а) он закрытый и работал в Сбербанке б) я уже десять лет не работаю с маздаем и не собираюсь, слава макаронному монстру! но я разных багов, связанных с несовместимостью и кривыми апдейтами, я там видела сотни. тем более что инсталляций софта было дофига по всей стране, на разных конфигурациях. и все баги и глюки стекались ко мне и мне всё это приходилось разгребать. кроме разнообразных API, завёрнутых в ifdef'ы, там было много чего ещё весёлого. как-то раз, под новый год, мелкософт поломал математическую библиотеку плюсов. каким-то кривым апдейтом. из-за этого мне месяц полоскали мозги: почему в одном из отделений софт наглухо падает. оказалось - мелкий апдейт осла (осёл у них зачем-то стоял на сервере) уронил всё. там был банальный сегфолт из-за того, что они сменили сигнатуру одной из функций. таких приколов было много.

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

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

Iron_Bug ★★★★★
()
Ответ на: комментарий от Iron_Bug

я тебе не дам код

А я не просил у тебя код, я просил у тебя конкретный вызов WinAPI из ключевых библиотек системы.

И, я так понимаю, тебе нечего предъявить.

мелкософт поломал математическую библиотеку плюсов

А при чём тут WinAPI ?

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

Подожди, подожди. То есть, ты написала софт для сервера, который должен был бы работать без IE, но он у тебя падал из-за того, что вызывал какую-то функцию IE с несовместимыми аргументами? И виноват в этом почему-то Microsoft?

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

КАКОЙ УЖАС !!!!11111 То ли дело НЕ Microsoft. НИ ЕДИНОГО разрыва БАГА ни в копиляторах, ни в библиотеках. Во всех и всегда.

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

Не иначе как windows update из астрала обновления качает.

индусский код стал только ещё более индусским.

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

LamerOk ★★★★★
()
Ответ на: комментарий от LamerOk

нет. я просто не буду поднимать вопросы десятилетней давности. мне лень. ты просто тролль на форуме. а у меня архивы со старым кодом хотя и лежат, на всякий случай, но за ненадобностью свалены на винты, которые давно уж покоятся с миром где-то в шкафу. там этого добра навалом. но маздая у меня больше нет ни дома, ни на работе. так что мне ничего оттуда не пригодится и можно это всё похоронить и вздохнуть с облегчением. более того, я не стану на лорчике обсуждать половые проблемы маздая и его кривую архитектуру. мне ещё и дрова приходилось под это УГ писать. и бОльшего извращения я в жизни не видела. так что там даже на уровне ядра были косяки и поломки с несовместимостью API, особенно когда они сделали рывок и попытались в 64 бита. но поленились сделать всё нормально и сделали через одно место. поэтому посыпались все старые дрова. именно из-за того, что переделали сигнатуры некоторых функций. но уже в ядре, что было хуже. и отлаживать было неудобно и я коды ошибок с синих экранов наизусть помнила. в любом случае, это всё гнусный оффтоп и пусть маздай горит синим пламенем. я с ним намудёхалась за много лет от ядра до приложений верхнего уровня и больше не хочу к нему возвращаться ни как программист, ни как юзер.

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

Iron_Bug ★★★★★
()
Последнее исправление: Iron_Bug (всего исправлений: 2)
Ответ на: комментарий от Iron_Bug

ты просто тролль на форуме.

Правильно, нечего ответить - объяви собеседника троллем.

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

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

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

Давай ты будешь сказки своим детям рассказывать?

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=823186

32-ух битный Chromium уже год падает на самой обыкновенной янедкс-почте.

У меня, в отличие от тебя, есть факты.

LamerOk ★★★★★
()
Ответ на: комментарий от LamerOk

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

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

Давай ты будешь сказки своим детям рассказывать?

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

32-ух битный Chromium уже год падает на самой обыкновенной янедкс-почте.

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

Iron_Bug ★★★★★
()
Последнее исправление: Iron_Bug (всего исправлений: 1)
Ответ на: комментарий от Iron_Bug

ты не заслужил такого внимания, чтобы я свою задницу подняла

Но, я надеюсь, ты всё же проскакала тысячу миль, чтобы сообщить мне об этом? ;)

не умею рассказывать детям сказки

Этот тред - прямое опровержение твоих слов.

у меня нет проприетарного хромиума

нет проприетарного хромиума

проприетарного хромиума

хромиума

проприетарного

Тебе, случайно, врачи никаких таблеток не прописывали? У меня ощущение, что либо ты приняла таблетки без ведома врачей, либо пропустила приём выписанных.

LamerOk ★★★★★
()
Ответ на: комментарий от Iron_Bug

Ах, да.

я не хочу колупаться в этой каналье

За это - отдельное спасибо.

LamerOk ★★★★★
()
Последнее исправление: LamerOk (всего исправлений: 1)
Ответ на: комментарий от LamerOk

Проблема с хромиумом это во-первых закрытая разработка как и в андроиде, а ещё если ты таки решишься в него залезть, то тебе предстоит слойить уйму фана, так как сборка хромиума дело весьма нетривиальное... Мозилла гораздо в этом плане less evil, если таки осилишь вытянуть репозиторий. Поэтому баги хромиума будут висеть до второго пришествия, если фиксы на них не интересны самому гуглу.

slapin ★★★★★
()
Ответ на: комментарий от Iron_Bug

в маздай стандарты С++ довозят на оленях, через несколько лет после их выхода

Последние пару лет они настолько серьезно поддали, что C++17 стандарт завезли раньше C++14. Кроме того MS серьезно форсирует поддержку своего варианта модулей (есть еще от clang), пытается пропихнуть собственное видение корутин (ради чего придумали аж 3 новых ключевых слова). В общем, последние годы MS жжет в плане поддержки и пропихивания в стандарт своих поделок не по детски.

anonymous
()
Ответ на: комментарий от Iron_Bug

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

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.