Количество умеемых сторонних библиотек - ваше мнение
От: Shmj Ниоткуда  
Дата: 05.11.22 22:18
Оценка:
Начну с практического примера, дабы не быть голословным.

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

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

Далее. Если вы не сталкивались — начинается самый смак — как будете выходить из ситуации. Допустим, так получилось, что на вашем любимом языке библиотека не доделана и не обладает нужным вам функционалом. Можно доработать, но это время. Можно собрать библиотеку на C/C++ и подключить — под них почти все создано в лучшем виде — но нужно уметь в CMake и прочие штуки — если не сталкивались, то может быть не просто (пример как чел. описывал свой опыт сборки OpenSSL с нуля — ушло несколько дней).

В общем, в чем суть вопроса. Насколько важен опыт применения сторонних библиотек в реальной разработке, как вы думаете? Почему особо никто не уделяет этому внимания на тех же собеседованиях — просили ли вас перечислить сторонние библиотеки, которые вы использовали?
Re: Количество умеемых сторонних библиотек - ваше мнение
От: vsb Казахстан  
Дата: 05.11.22 23:28
Оценка: 6 (1) +2
Здравствуйте, Shmj, Вы писали:

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


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

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

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

Четвёртый подход это разобраться с самим форматом и написать самостоятельно упаковщик. Тут сроки будут большие, ориентировочно 3-6 месяцев. Для более точной оценки нужна неделя на изучение формата и некоторых существующих реализаций.

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


Смотря каких. Есть общепринятые библиотеки. Типа Spring в Java. Их опыт важен. А искать человека, у которого есть опыт создания ISO-образов на Java — ну такого человека можно и сто лет искать.
Отредактировано 05.11.2022 23:28 vsb . Предыдущая версия .
Re[2]: Количество умеемых сторонних библиотек - ваше мнение
От: Michael7 Россия  
Дата: 06.11.22 00:33
Оценка: +3
Здравствуйте, vsb, Вы писали:

vsb>Четвёртый подход это разобраться с самим форматом и написать самостоятельно упаковщик. Тут сроки будут большие, ориентировочно 3-6 месяцев. Для более точной оценки нужна неделя на изучение формата и некоторых существующих реализаций.


Не обязательно, нередко в подобных ситуациях не требуется полнота реализации формата/стандарта. Тем более еще и лицензионные проблемы с чужим кодом могут оказаться. Поэтому написание самому малой части иногда может даже оказаться быстрее, чем коректное прикручивание готовой библиотеки.
Отредактировано 06.11.2022 0:34 Michael7 . Предыдущая версия .
Re[2]: Количество умеемых сторонних библиотек - ваше мнение
От: CreatorCray  
Дата: 06.11.22 04:20
Оценка: +1 :)
Здравствуйте, vsb, Вы писали:

vsb>Четвёртый подход это разобраться с самим форматом и написать самостоятельно упаковщик. Тут сроки будут большие, ориентировочно 3-6 месяцев.

Чего? Для ISO то?
... << RSDN@Home 1.3.110 alpha 5 rev. 62>>
Re: Количество умеемых сторонних библиотек - ваше мнение
От: LaptevVV Россия  
Дата: 06.11.22 04:33
Оценка: +2
S>Допустим, вам понадобилось чтобы прога (на вашем любимом языке) генерила Iso9660-контейнер (в виде ISO-файла), в котором будут папки и файлы с некоторыми атрибутами. Как быстро вы сможете это сделать? Можете ли сказать сразу или же нужно время, чтобы оценить? Сколько времени нужно на оценку?
Всяких разнообразных задач могут быть миллион.
Если уже решал — решишь быстро.
Если нет — сначала надо разобраться.
Сторонние библиотеки появляются тоже как решение неких задач, с которыми столкнулся разработчик.
Так что возможно, что для решения данной задачи ты сам напишешь свою библиотеку.
Если задача вдруг оказалась достаточно часто возникающая, то твоя библиотека тоже станет "сторонней".
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re: Количество умеемых сторонних библиотек - ваше мнение
От: cppguard  
Дата: 06.11.22 04:45
Оценка: 11 (2) +2
Здравствуйте, Shmj, Вы писали:

Есть библиотеки, которые не требуют знания предметной области. С такими можно работать как с любыми другими, и это один из базовых навыков самостоятельного программиста. А есть те, к которым не подъедешь, пока не прочтёшь пару умных книжек по теме. И тут как бы варианта нет — приходится разбираться каждый раз с нуля. Поработав долгое время с одной такой открытой библиотекой, я потом долгое время собирал заказы на фрилансе, потому что сами заказы были несложные, но на изучение предметной области требовалось около недели. Но, конечно, скорость зависит и от общих знаний.
Re[3]: Количество умеемых сторонних библиотек - ваше мнение
От: vsb Казахстан  
Дата: 06.11.22 04:58
Оценка: +1
Здравствуйте, CreatorCray, Вы писали:

vsb>>Четвёртый подход это разобраться с самим форматом и написать самостоятельно упаковщик. Тут сроки будут большие, ориентировочно 3-6 месяцев.

CC>Чего? Для ISO то?

Ну может меньше, если он простой. Хотя я сомневаюсь, я никогда не писал реализации файловых систем. Подозреваю, что там ещё будет куча разновидностей этого ISO, хотя может для генерации оно и не нужно.
Re[3]: Количество умеемых сторонних библиотек - ваше мнение
От: Shmj Ниоткуда  
Дата: 06.11.22 10:42
Оценка: :)
Здравствуйте, CreatorCray, Вы писали:

vsb>>Четвёртый подход это разобраться с самим форматом и написать самостоятельно упаковщик. Тут сроки будут большие, ориентировочно 3-6 месяцев.

CC>Чего? Для ISO то?

Если нужно n файлов упаковать — можете использовать ZIP-файл и распространять, но программа запускаться не будет по двойному клику и даже будут проблемы с Extract All. С ISO все будет работать по двойному клику.
Re[2]: Количество умеемых сторонних библиотек - ваше мнение
От: Shmj Ниоткуда  
Дата: 06.11.22 10:45
Оценка: :)
Здравствуйте, LaptevVV, Вы писали:

LVV>Сторонние библиотеки появляются тоже как решение неких задач, с которыми столкнулся разработчик.

LVV>Так что возможно, что для решения данной задачи ты сам напишешь свою библиотеку.

Тут вопрос в сроках и в цене. Кто-то любит писать все сам и вместо того, чтобы за 20 минут подключить готовое — будем 2 недели коптить и писать свое + 2 недели дорабатывать. Не верю что есть проекты, для которых не проблема вот так вот на пустом месте потратить месяц.
Re[3]: Количество умеемых сторонних библиотек - ваше мнение
От: LaptevVV Россия  
Дата: 06.11.22 10:50
Оценка:
LVV>>Сторонние библиотеки появляются тоже как решение неких задач, с которыми столкнулся разработчик.
LVV>>Так что возможно, что для решения данной задачи ты сам напишешь свою библиотеку.
S>Тут вопрос в сроках и в цене. Кто-то любит писать все сам и вместо того, чтобы за 20 минут подключить готовое — будем 2 недели коптить и писать свое + 2 недели дорабатывать. Не верю что есть проекты, для которых не проблема вот так вот на пустом месте потратить месяц.
За 20 минут, если ты это делаешь в 3 раз.
А если, например, тебе нужно что-то вроде обработки текстового файла (а ля json)
По мне гораздо проще (и быстрее!) написать конкретную обработку текстового файла в конкретной задаче,
чем подключать универсальную (!) стороннюю библиотеку для обработки json-файлов
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[4]: Количество умеемых сторонних библиотек - ваше мнение
От: Shmj Ниоткуда  
Дата: 06.11.22 10:59
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>За 20 минут, если ты это делаешь в 3 раз.


Ну, наверное, в C есть проблемы с подключением библиотек, особенно для кроссплатформы. Раз вы пишите. В C# на подключение среднестатистической библиотеки, у которой есть QuickStart, уходит ну минут 5.
Re: Количество умеемых сторонних библиотек - ваше мнение
От: Muxa  
Дата: 06.11.22 11:01
Оценка:
О, я как раз писал исошки из сервиса на дотнете. Лет 12 назад была такая задача.
Деталей не помню, по-моему обернул плюсовую реализацию.
Re[5]: Количество умеемых сторонних библиотек - ваше мнение
От: LaptevVV Россия  
Дата: 06.11.22 11:09
Оценка:
LVV>>За 20 минут, если ты это делаешь в 3 раз.
S>Ну, наверное, в C есть проблемы с подключением библиотек, особенно для кроссплатформы. Раз вы пишите. В C# на подключение среднестатистической библиотеки, у которой есть QuickStart, уходит ну минут 5.
Дык и пишите ВСЕГДА на С#...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[3]: Количество умеемых сторонних библиотек - ваше мнение
От: Kernan Ниоткуда https://rsdn.ru/forum/flame.politics/
Дата: 06.11.22 12:37
Оценка: +1
Здравствуйте, Shmj, Вы писали:

S>Тут вопрос в сроках и в цене. Кто-то любит писать все сам и вместо того, чтобы за 20 минут подключить готовое — будем 2 недели коптить и писать свое + 2 недели дорабатывать.

Лицензии часто не позволяют просто взять и использовать. Многие переписывают одно и тоже по 10 раз только из-за лицензионных вопросов.
Sic luceat lux!
Re: Количество умеемых сторонних библиотек - ваше мнение
От: Ромашка Украина  
Дата: 06.11.22 16:03
Оценка: 17 (3) +2
Здравствуйте, Shmj, Вы писали:
S>В общем, в чем суть вопроса. Насколько важен опыт применения сторонних библиотек в реальной разработке, как вы думаете? Почему особо никто не уделяет этому внимания на тех же собеседованиях — просили ли вас перечислить сторонние библиотеки, которые вы использовали?

Я тебе расскажу реальную историю. Я как-то писал генератор отчетов под одну задачу. Три месяца убил, написал. А когда написал — случайно набрел на решение (можно сказать сторонняя библиотека, мы это использовали но я не знал о нужной возможности), которое заняло 5 минут работы. Пять минут, Карл!!! Грубо говоря $1 vs $10000. Разница в эффективности — 4 порядка(!!!). Позвонил заказчику, сказал — чувак, я пролюбил 10 тонн твоих баксов, увольняй меня нафиг, я в печали и в депрессии. Заказчик сказал — не парься. Не, я попарился конечно, но в конце-концов забил. А еще через полгода мой генератор отчетов ушел в продакшен на совершенно другом проекте, там был кардинально другой стек технологий и решение за $1 там просто не работало.

Из этой истории я для себя сделал следующие выводы:
1. Хороший продукт (код) найдет себе применение, даже если сейчас он не нужен.
2. Исследования важны для всех — и для программера и для заказчика.
3. Опыт применения сторонних библиотек важен, но совершенно неважно какие сторонние библиотеки вы до этого применяли.


Всё, что нас не убивает, ещё горько об этом пожалеет.
Re[4]: Количество умеемых сторонних библиотек - ваше мнение
От: CreatorCray  
Дата: 06.11.22 20:21
Оценка:
Здравствуйте, Shmj, Вы писали:

vsb>>>Четвёртый подход это разобраться с самим форматом и написать самостоятельно упаковщик. Тут сроки будут большие, ориентировочно 3-6 месяцев.

CC>>Чего? Для ISO то?

S>Если нужно n файлов упаковать — можете использовать ZIP-файл и распространять, но программа запускаться не будет по двойному клику и даже будут проблемы с Extract All. С ISO все будет работать по двойному клику.


Ты вообще не понял про что речь
... << RSDN@Home 1.3.110 alpha 5 rev. 62>>
Re: Количество умеемых сторонних библиотек - ваше мнение
От: AmSpb  
Дата: 08.11.22 22:45
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Возможно вы с этим сталкивались ранее — тогда все просто, скорее всего в закромах у вас есть рабочее проверенное решение и сможете сделать за минуты. Как бы этим своим опытом, знанием готовых решений — вы и ценны.


S>Далее. Если вы не сталкивались — начинается самый смак — как будете выходить из ситуации. Допустим, так получилось, что на вашем любимом языке библиотека не доделана и не обладает нужным вам функционалом. Можно доработать, но это время. Можно собрать библиотеку на C/C++ и подключить — под них почти все создано в лучшем виде — но нужно уметь в CMake и прочие штуки — если не сталкивались, то может быть не просто (пример как чел. описывал свой опыт сборки OpenSSL с нуля — ушло несколько дней).


А мог бы взять Dockerfile, в котором собирается OpenSSL и вуаля на выходе скомпиленные либы OpenSSL

Если я сталкиваюсь с чем-то подобным, т.е. что-то сложное надо скомпилить, то раньше просто изучал доки библиотеки, раздел build & install, сейчас же сначала ищу Dockerfile, где собирается данная либа

Реально щас практически нету такой опенсорсной программы/либы (Unix/Linux/MacOS возможно Windows), для которой бы не было докерфайла, где прога/либо компилилась
Отредактировано 08.11.2022 22:51 AmSpb . Предыдущая версия .
Re[2]: Количество умеемых сторонних библиотек - ваше мнение
От: Shmj Ниоткуда  
Дата: 08.11.22 23:36
Оценка:
Здравствуйте, AmSpb, Вы писали:

AS>Реально щас практически нету такой опенсорсной программы/либы (Unix/Linux/MacOS возможно Windows), для которой бы не было докерфайла, где прога/либо компилилась


Так ему нужна была последняя сборка под Windows, которой нет в vcpkg. Есть там кросс-компиляция и насколько она работает?
Re: Количество умеемых сторонних библиотек - ваше мнение
От: __kot2  
Дата: 09.11.22 12:42
Оценка: :)
Я бы убедил заказчика что ему это не надо и вообще никакого кода бы не писал
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.