Why Nostr? What is Njump?
2024-01-06 08:32:13

Joinny Hash on Nostr: Начитался айрон бага, теперь хочу переписать ...

Начитался айрон бага, теперь хочу переписать свой ОМЕРЗИТЕЛЬНЫЙ python пет-проект на чистый C, но мне лень. Это ж надо:

1. Впариться за дистрибьюцию, pip install uuid05 уже не прокатит.

2. Ну явно ведь не притащили в стандартную библиотеку C адекватный argparse с одновременными short и long-opts за 50 лет, чтобы не надо было в прикладном коде декларативно его описать и вызвать предоставляемую функцию, только писать итерацию по argv ручками!

3. Для base64 нужно определиться у кого дёрнуть энкодер в интернете, так чтобы не вывести случайно что-нибудь экстремистское вместо UUID'ов. Вроде неплохие кандидаты - WPA-библиотечка в MIT и QuickTime у Apple. Но мне ж ещё и поддержку altchars кастомизируемых подавай!

Но насколько быстрее получится потенциальная тулза - интересно. Это ж не надо ради oneshot'а тащить в память интерпретатор python...

P.S: в целом с поинтом что "лишние зависимости - зло" - я согласен, стараюсь обычно после первой версии проекта, которая работает и проходит тесты, после второй, которая прошла первую волну issues после публикации заняться тем, чтобы выпилить зависимости, которые чисто для удобства, либо заменить их на используемые уровнем ниже. Как правило это не сильно усложняет, а изредка ещё и упрощает код.

Ещё есть лицензии. Я не абсолютист, поэтому, может всё до конца и не довожу, на юридическую чистоту таких проектов мне +/- пофиг, в целом можно и об GPL зашквариться (но обычно стараюсь всё же избегать, обходиться чем-то более пермиссивным, типа MIT). Пожалуй, лицензия это просто один из факторов при сортировке кандидатов на выдворение из зависимостей.
Author Public Key
npub1ujtey4xqmxud9adqcmuehwxr7gp5w0ncn9ak4a3q3g90ty28xjgsp6p6gv