Ivan_83 Опубликовано 19 февраля, 2016 · Жалоба Лучше весь месяц писать ini парсер, раз вечер сильно мало. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vop Опубликовано 19 февраля, 2016 · Жалоба И чё, ибаться 2 недели только ради парсинга конфига? Если вы в первый раз в жизни пишите парсер, то да ипаться. В следующий 100500 раз у вас уже будет парсер. Выстраданный, отлаженный, и хорошо понимаемый. :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
s.lobanov Опубликовано 19 февраля, 2016 · Жалоба Всё понятно, в треде изобретатели велосипедов. Теперь понятно почему телеком биллинги такое говно. Люди пишут парсеры конфигов и прочее, а не биллинг Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vop Опубликовано 19 февраля, 2016 · Жалоба Ну да, все верно. Ведь в биллинг надо каждую неделю писать примерно 15 новых парсеров. Все 20 лет существования биллинга. Каждую неделю. 15 штук. :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 19 февраля, 2016 · Жалоба Ну да, все верно. Ведь в биллинг надо каждую неделю писать примерно 15 новых парсеров. Все 20 лет существования биллинга. Каждую неделю. 15 штук. :) Не взрывай мозг человеку, у него парсеры ини годами пишутся :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
SyJet Опубликовано 20 февраля, 2016 · Жалоба Если честно, не представляю чего в парсере писать 2 недельки. Пару дней с кофем и плюшками с вКонтактиком - да. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
nuclearcat Опубликовано 20 февраля, 2016 · Жалоба Напишете аналогичное https://github.com/benhoyt/inih меньше чем за через две недельки? :) Блин, обе ж стороны правы, вы говорите про парсер, но не говорите о том, что он умеет Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
s.lobanov Опубликовано 20 февраля, 2016 · Жалоба Если честно, не представляю чего в парсере писать 2 недельки. Пару дней с кофем и плюшками с вКонтактиком - да. Наговнокодить может быть и за час что-то можно нечитаемое и с багами. Вот вам пример исходников хорошего ini-парсера на java(т.е. на C/C++ будет ещё больше кода, на js или чуть поменьше), которым я пользуюсь в своих поделках . И там ещё есть тесты всего этого дела За пару дней с вконтактиком всё это сделать не реально. За пару дней можно сделать только говно Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 20 февраля, 2016 · Жалоба http://www.netlab.linkpc.net/download/software/SDK/ini_cfg.c http://www.netlab.linkpc.net/download/software/SDK/ini_cfg.h Вечер или два, хз чего там больше делать. При этом не только читает но и пишет, ибо по сути это БД с настройками, которая должна пахать быстро. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
s.lobanov Опубликовано 20 февраля, 2016 · Жалоба Ivan_83 оффтоп: а может сделать alias для вашего домена, а то корп. фаервол не пускает, считает ваш сайт опасным :) (Dynamic DNS Host) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 20 февраля, 2016 · Жалоба Там и так 3 алиаса: http://www.netlab.linkpc.net http://netlab.dhis.org http://net-lab.slyip.net то что фаерволы и прочая считаю всё на динднс не безопасным - это от проблем в голове создателей и тех кто ставит/верит таким продуктам. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Sonne Опубликовано 21 февраля, 2016 · Жалоба Если честно, не представляю чего в парсере писать 2 недельки. Пару дней с кофем и плюшками с вКонтактиком - да. Сначала нормальный парсер, потом тесты, потом нармальную доку. Потом перевести минимум на английский язык, потому что пользователи не обязаны догадыватся о твоих извращенных фантазиях в написании конфига. Кодинг в создании продукта - это 5% работы. Вот и получается что если на кодинг потратить день, то на продукт выйдет две недели А главное, зачем? Чтобы кто то сказал - тебе слабо парсер написать который никому никогда не потребуется? http://www.netlab.linkpc.net/download/software/SDK/ini_cfg.c http://www.netlab.linkpc.net/download/software/SDK/ini_cfg.h Вечер или два, хз чего там больше делать. При этом не только читает но и пишет, ибо по сути это БД с настройками, которая должна пахать быстро. В моем проект сейчас в 20 раз меньше кода и я очень надеюсь, что он не увеличится больше сем в 10 раз. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 21 февраля, 2016 · Жалоба В моем проект сейчас в 20 раз меньше кода и я очень надеюсь, что он не увеличится больше сем в 10 раз. Это состязание у кого короче?) Я относительно легко читаю и умещаю в голове 1к кода, до 2к уже сложнее - и скролить становится не удобно, поэтому приходится разбивать на модули. Сколько у тебя там кода - вопрос спорный. Ты можешь думать что какой нибудь код вида: print("md5(123) hash is: %s", md5_2_str("123')); это одна строчка но на практике мд5 это 500 строк и ещё хз сколько от стандартной либы задействовано. Я вот тоже могу сказать что, например в ssdpd всего каких то 500 строчек кода, это в общем то почти правда, ибо ещё 5-8к это моя либа которая во многих моих проектах задействована. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Sonne Опубликовано 21 февраля, 2016 · Жалоба Ivan_83 Упаси бог состязаться в программировании с прогаммистами. Я С-шников очень уважаю и даже согласен с любыми доводами в пользу надежности и быстродействия, кроме одного. Да C и C++ это круто, но писец как сложно. Столько вещей нужно обработать самому и контролировать в мозгу. Понятно что для таких людей написать свой парсер конфигов - три раза плюнуть. У меня задача другая - я хочу освоить что то получше чем Perl/PHP но не такое адовое как C++. Я уже пробовал - несколько раз, не выходило. Чтобы вот так пару раз в неделю сесть и покодить 30-60 минут в свое удовольствие. Если поперло то засесть на 3-4 часа в ночь. Пока что Node.js оказался чертовский быстр и довольно понятен. Но скриптовость и кривизна яваскрипта, который признают даже авторы учебников пугает. Разработчики node.js на полном серьезе предлагают пускать сессию screen и в ней скрипт node.js. Я как прирожденный системный администратор - категорически протестую! Go - совсем другое. Если получится на нем написать в процессе обучения что то более полезное чем парсер конфигов - я буду удовлетворен. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
pavel.odintsov Опубликовано 21 февраля, 2016 · Жалоба Go рулез и имба для почти всех современных задач :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 21 февраля, 2016 · Жалоба Столько вещей нужно обработать самому и контролировать в мозгу. Понятно что для таких людей написать свой парсер конфигов - три раза плюнуть. Это только так кажется. На практике можно кодить так как примерно это было в бэйсике, это конечно притягиваю, но в целом не сильно сложнее. На плюсах нюансов на порядок больше, но в прямых руках, как я понял из чужого опыта (сам я плюсы не умею), оно даёт ощутимые профиты в читаемости и обьмах кода. Пока что Node.js оказался чертовский быстр и довольно понятен. Но скриптовость и кривизна яваскрипта, который признают даже авторы учебников пугает. Разработчики node.js на полном серьезе предлагают пускать сессию screen и в ней скрипт node.js. Я как прирожденный системный администратор - категорически протестую! Вот мне тоже категорически не понравилось что rtorrent предлагали запускать демоном через скрин, настолько что я забрался в код и вырезал к херам весь его консольный гуй, после чего проблем с демонизацией не стало :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
agr Опубликовано 22 февраля, 2016 · Жалоба Пока что Node.js оказался чертовский быстр и довольно понятен. Но скриптовость и кривизна яваскрипта, который признают даже авторы учебников пугает. Разработчики node.js на полном серьезе предлагают пускать сессию screen и в ней скрипт node.js. Я как прирожденный системный администратор - категорически протестую! Запускайте как сервис через systemd(для этого только надо написать юнит файл в строк 7). Это весьма распространненный способ запуска nodejs приложений. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
s.lobanov Опубликовано 22 февраля, 2016 · Жалоба Не нравится screen? nohup. И вообще запускать через screen/nohup это получается unix way. Зачем кодить то(демонизацию) что умеет другое ПО? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 23 февраля, 2016 · Жалоба Зачем кодить то(демонизацию) что умеет другое ПО? Зачем юзать линух на десктопе и серверах когда есть венда? Если серверный софт не умеет пахать демоном то это нужно лечить в коде, а не костылями и приговорами: "и так сойдёт". Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
s.lobanov Опубликовано 24 февраля, 2016 · Жалоба Это вопрос философии. Кому-то нравится unix way, кому-то монолитный продукт. Если для админа оно прозрачно посредством unit-файла systemd или готового init-скрипта, то какая разница? Меньше кода - меньше проблем Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 24 февраля, 2016 · Жалоба 0. Если бы этот маразм был Unix way то и остальные программы работали бы через такую же жопу, однако практически все кому надо работать демоном делают это своими силами. 1. Эксплуатация в условиях под которые оно не создавалось 2. Конкретно в моём случае для работы rtorrent демоном требовалось как раз удалить к херам весь гуишный код, остальное брал на себя самописный rc.d скрипт: вычисление пида и отвязывание от консоли. 3. Код для демонизации - строчек 10, если со всякими там извратами и приколами то от силы сотня, притом он копипастится и адаптируется под свои нужны выкидыванием не нужного. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Sonne Опубликовано 24 февраля, 2016 · Жалоба Это вопрос философии. Кому-то нравится unix way, кому-то монолитный продукт. Если для админа оно прозрачно посредством unit-файла systemd или готового init-скрипта, то какая разница? Меньше кода - меньше проблем Интересно, я обновил сервера до Debian 8, там используется systemd по умолчанию. Вообще unix админы консервативные люди. Лучше если бы иметь стандартную фичу демонизации. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
s.lobanov Опубликовано 24 февраля, 2016 · Жалоба Ivan_83 А зачем мне писать эти 10 строчек, когда есть nohup? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
s.lobanov Опубликовано 24 февраля, 2016 · Жалоба И самое важное, C и т.п. подразумевают то, что относительно легко делать системные вызовы и т.п. JAVA и javascript изначально такого не подразумевает. Да, конечно у Java есть JNI, но пилить native-код лишь ради демонизации это полное извращение. Нужно просто понимать, что сама по себе демонизация это так и ли иначе ОС-зависимая фича, а подразумается, что должно работать везде. Да, со временем придумают костыли типа такого http://commons.apache.org/proper/commons-daemon/ ради "админов", для которых nohup или screen это абсолютное зло, но оно опять же прослойка между vm и native. Я за это java и js и люблю, т.к. почти не задумываюсь о том, где оно потом будет работать (на винде, линуксе или где-то ещё), а то что start.sh и start.bat будут отличаться на пару байт - ну это настолько ничтожный компромисс, что давно с ним смирился и это куда лучше, чем уродские #ifdef WIN32 и #ifdef __linux__ . не должно быть это в коде прикладного ПО, всё это должно быть спрятано глубоко в либах Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vop Опубликовано 24 февраля, 2016 · Жалоба Ivan_83 А зачем мне писать эти 10 строчек, когда есть nohup? Всегда думал, что демонайзером является символ & в конце командной строки. А nohup всего-лишь отвязывает команду от управляющего терминала. :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...