На чём написать недосистему контроля версий?

Dimon89

Есть желание написать под себя удобный синхронизатор софтонастроек\IM-истории\прочей-ерунды в стиле дропбокса: поставил на одном компе сервер, на клиентах указал нужные папки для синхронизации, и всё работает. После этого усложним задачу: в процессе попрактиковаться в каком-нибудь малоосвоенном мной языке (C#, питон, хаскель, <впишите нужное>). Какой язык вы бы посчитали наиболее удобным для написания такой софтины?

yroslavasako

python + twisted
хаскель практически бесполезен. Более менее удобно на нём решать только небольшие учебные/тренировочные задачи. После изучения happstack (типо веб-фреймворк) я в этом убедился окончательно.

oliver11

Tcl тогда уж.

Dasar

можно c#, можно python.
на python-е проще писать, C# - проще поддерживать и распространять.
выбор больше зависит что ты от языка хочешь дальше? где его использовать?

FRider

и распространять.
это как так? Всмысле среди венды?

yroslavasako

это как так? Всмысле среди венды?
всмысле через PyPi

FRider

там было написано:
на python-е проще писать, C# - проще поддерживать и распространять.

Dasar

>это как так? Всмысле среди венды?
а как под *nix-ом кошернее распространять свою программу?

FRider

вопрос стоит чем легче то распространять на шарпе.
под никсом не спец как кошерней, но по крайней мере можно собрать "пакет"(в смысле набора файлов) который будет распространяться как xcopy.

Dasar

> вопрос стоит чем легче то распространять на шарпе.
под виндой проще, что .net уже обычно стоит, и что можно тем же clickonce-ом разворачивать, за одно вопрос с обновлениями решится.
под nix-ом, по идее, однофигственно. в одном случае - надо питон тащить, в другом - моно.
>но по крайней мере можно собрать "пакет"(в смысле набора файлов) который будет распространяться как xcopy.
такую фигню можно везде сделать.

shlyumper

Напиши на языке конфигурацинного файла для Unison. Отличный язык для написания такого рода софтины.

yroslavasako

под виндой проще, что .net уже обычно стоит, и что можно тем же clickonce-ом разворачивать, за одно вопрос с обновлениями решится.
под nix-ом, по идее, однофигственно. в одном случае - надо питон тащить, в другом - моно.
всё не так.
Во-первых, под виндой .net пропихнули насильственно в апдейты, чем вызывали реакцию отторжения, например у меня, и дотнета у меня нету.
Во-вторых, clickonce - гавно по сравнению с PyPi. Единый репозиторий - это действительно круто, заодно зависимости позволяет ставить. Опять же clickonce работает с пониженными правами, что полезно для апплетов, но бесполезно для сервера.
В-третьих, под nix-ом всё зависит от дистрибутива. portage написан на питоне, так что в генте питон есть из каробки на очень ранней стадии. А гном переползает на моно, и тоже тащит его за собой.

Dasar

>Во-вторых, clickonce - гавно по сравнению с PyPi. Единый репозиторий - это действительно круто, заодно зависимости позволяет ставить. Опять же clickonce работает с пониженными правами, что полезно для апплетов, но бесполезно для сервера.
и своя наколенная поделка тоже пихается в общий репозиторий?

Dasar

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

yroslavasako

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

Dasar

>можно сделать яйцо,
что такое "яйцо"?

yroslavasako

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

Dasar

т.е. сделать пакет, который располагается не в репозитории, но при этом при необходимости может вытащить необходимые доп. пакеты из репозитория?

yroslavasako

т.е. сделать пакет, который располагается не в репозитории, но при этом при необходимости может вытащить необходимые доп. пакеты из репозитория?
да

Dimon89

Напиши на языке конфигурацинного файла для Unison. Отличный язык для написания такого рода софтины.
Хмм, это практически то же самое, что я хотел создать. Спасибо.
Оставить комментарий
Имя или ник:
Комментарий: