Здравствуйте, Skorodum, Вы писали:
S>Здравствуйте, Marty, Вы писали:
M>>А чем консоль лучше, чем гуй? S>интеграцией с другими программами (my_tool_1 | my_tool_2)
Консоль уже есть, если говорить о тулзах. И её возможности перестали устраивать
S>возможностью поиска (my_tool --help | grep "do all the good")
Это неудобно. Проще зайти в нашу вики и на нужной странице сделать Ctrl+F. Тоже так себе
S>простотой (в GUI "найдите кнопку 'ФЫВА'", в CLI — "наберите 'ФЫВА'", над вторым вариантом думать вообще не надо).
Если визард шаг за шагом спрашивает один-два параметра, чего тут искать? Сиди выбирай чего просят
Здравствуйте, Marty, Вы писали:
M>У меня пайтоновский mako
M>Но это не снимает вопроса способе задания аргументов
А у питона нет автокомплита?
Скажем, в повершелле как раз это всё решено очень даже неплохо. Всяко лучше, чем в самопальном GUI-визарде.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Здравствуйте, Mamut, Вы писали:
M>и тут же
M>> Документация написана. На некоторые тулзы у меня мануалы на не один десяток страниц написан.
M>Но в визарде эта доукментация ВНЕЗАПНО станет короткой и всем понятной, ага.
В документации есть минус — не понятно, с какого конца копать. Её целиком никто не читает, и обо всех возможностях тулз мало кто знает, кроме авторов. В визарде может и не так детально будет, зато будет выводится только та инфа, которая нужна на конкретном шаге, чтобы произвести выбор. Это большой плюс.
M>>Писать будет тот, кому больше всех это надо M>>Не магическим образом, а интерпретатором. M>>Пример конфига такого визарда-всемогутора (всё чисто гипотетическое, чисто для теста):
M>То есть точно так же, как сейчас скрипты Ты жалуешься, что народ не понимает, что в питоновых скриптах написано. А вот в твоем мега-XML'е/мега-JSON'е с каким-то магическим интерпретатором (который тоже видимо магическим образом появляется и не требует ни документации ни сопровождения — ничего) все автоматом сразу разбираются и радостно пишут на нем визарды
Ну, для начала будет достаточно мне самому напилить визардов, чтоб другие пользовались, главный автоматизатор в основном я пока, хотя народ начал проникаться
M>>Вот я напилил несколько тулз, запилил статей в вики, чтобы коллегам было понятно, что к чему, но всё равно не очень — всем проще меня спросить чо как, а я в ответ уже просто ссылку на конкретный раздел доки скидываю. Мне бы проще было один раз напилить визардов, и чтобы меня никто не трогал
M>Ага. В визарде будет 100 параметров с 10 страницами документации, но тебя никто не будет спрашивать, ага.
Обычно меня спрашивают: "а есть такая фича", "а можно такое-то сгенерить" — на что я отвечаю ссылкой на раздел доки. В визарде все фичи и опции будут явно выдаваться
M>>Вот у меня такая рутина появилась, раз, другой руцами сделал. Вижу, что часто повторяется, запилил конфиг для визарда, в следующий раз и себе меньше работы, и расшарить практику на тим легко
M>Л — логика:
M>- скрипты на питоне никто не понимает, документацию на 10 страниц не читают, расшаривать с командой сложно M>- визард на неизвестном никому DSL'е на неизвестном никому интерпретаторе это хорошо, все понимают, 10 страниц документации в визарже все будут читать, расшаривать визард с командой — легко
В DSL смотрит только автор визарда, все остальные смотрят только на то, что визард показывает, нажимают на кнопочки и заполняют то, что визард просит. По-моему удобно. И прекрасно шарится
M>
M>>--help — выдает обычно 200+ строк, в пике сейчас 700 строк просто перечисления опций.
M>Ну у тебя будет 700 строк опций в визарде. Стало сильно легче?
Нет, не будет. Будет десяток страниц с простыми вопросами
M>>>- вынести всю эту ненужную трахотню с отдельным запуском каких-то скриптов в настройки проекта, условные куски кода, генерацию в процессе сборки.
M>>Трахотня вынесена в батники, которые запускаются перед сборкой проекта. Но, чтобы написать эти батники, нужно покурить доку и правильно настроить вызов соответствующих тулз.
M>Раз это делает несколько раз, постоянно, то вот эти несколько раз вписываются в батники.
Только параметры каждый раз могут быть разными, а так да, когда можно, выносится в батники
Здравствуйте, Marty, Вы писали:
M>У тебя сложилось несколько превратное впечатление. Я конечно люблю студию, и под винду пишу под ней, но вообще не чужд и работе в консольке по ssh, а сейчас отлаживаюсь на железках через COM-порт.
Кстати я сейчас тоже Segger/QtCreator/Atmel/IAR/FDK, но я больше интеграцией разных модулей занимаюсь и DevOps, всего понемногу: от железок до облаков и мобилок.
Вот прям сейчас простой пример с MQTT не хочет в амазоновское облако писать через мобилку
Я ничего не имею против Студии в качестве редактора и отладчика, но я категорически против студийных солюшенов: т.к. это вендор лок и у них ужасный формат.
Здравствуйте, Sinclair, Вы писали:
M>>У меня пайтоновский mako
M>>Но это не снимает вопроса способе задания аргументов S>А у питона нет автокомплита? S>Скажем, в повершелле как раз это всё решено очень даже неплохо. Всяко лучше, чем в самопальном GUI-визарде.
Это как? Вот у меня есть опция, где-то в коде она проверяется, что равна одному из пяти-десяти фикс значений, и что, такой автокомплит бывает?
Или, например, сам шаблон задается в ходе выбора в визарде, и последующие возможные переменные зависят от того, какой шаблон выбран. Как вот это всё нормально в консольке организовать?
Здравствуйте, Skorodum, Вы писали:
S>Я ничего не имею против Студии в качестве редактора и отладчика, но я категорически против студийных солюшенов: т.к. это вендор лок и у них ужасный формат.
Ну, формат-то норм — я тока ручками туда и лазаю.
А вендор-лок — это да, есть такой вопрос.
Кстати, я в этом топике именно этот вопрос и поднимаю — условно говоря можно напилить визардов под студию, и пользоваться ими, но не хочется привязываться к студии
M>>Но в визарде эта доукментация ВНЕЗАПНО станет короткой и всем понятной, ага.
M>В документации есть минус — не понятно, с какого конца копать. Её целиком никто не читает, и обо всех возможностях тулз мало кто знает, кроме авторов. В визарде может и не так детально будет, зато будет выводится только та инфа, которая нужна на конкретном шаге, чтобы произвести выбор. Это большой плюс.
И тут же
M> [В визардже] Будет десяток страниц с простыми вопросами
Сделай то же самое в документации
M>Ну, для начала будет достаточно мне самому напилить визардов, чтоб другие пользовались, главный автоматизатор в основном я пока, хотя народ начал проникаться M>В DSL смотрит только автор визарда, все остальные смотрят только на то, что визард показывает, нажимают на кнопочки и заполняют то, что визард просит. По-моему удобно. И прекрасно шарится
Это называется job security. Взять тулзу, которая никому неизвестна, делать на ней никому непонятную неведомую хрень и подавать это под соусом «хорошо шарится, всем удобно». Потом, правда, окажется, что интерпретатор и DSL надо развивать, поддерживать, документировать, что это все говно работает только на определенных версиях определенных систем и библиотек и т.д. и т.п.
Вместо того, чтобы избавится от тулзов со 100 опциями и 10 страницами документации.
Здравствуйте, Skorodum, Вы писали:
M>>Потому что это фиксированный набор с заранее известными параметрами. Там нет никаких «универсальных визардов». S>ЕМНИП в QtCreator именно универсальный визард для новых проектов, возможные параметры, на основе которых генерится GUI, хранятся где-то в текстовом виде.
Это опять вендор-лок. Так-то в итоге "параметры, на основе которых генерится GUI", у всех хранятся где-то в каком-то текстовом виде
Здравствуйте, Mamut, Вы писали:
M>И тут же
M>> [В визардже] Будет десяток страниц с простыми вопросами
M>Сделай то же самое в документации
Еще 100 страниц документации написать? Так себе идея
M>>Ну, для начала будет достаточно мне самому напилить визардов, чтоб другие пользовались, главный автоматизатор в основном я пока, хотя народ начал проникаться M>>В DSL смотрит только автор визарда, все остальные смотрят только на то, что визард показывает, нажимают на кнопочки и заполняют то, что визард просит. По-моему удобно. И прекрасно шарится
M>Это называется job security. Взять тулзу, которая никому неизвестна, делать на ней никому непонятную неведомую хрень и подавать это под соусом «хорошо шарится, всем удобно». Потом, правда, окажется, что интерпретатор и DSL надо развивать, поддерживать, документировать, что это все говно работает только на определенных версиях определенных систем и библиотек и т.д. и т.п.
M>Вместо того, чтобы избавится от тулзов со 100 опциями и 10 страницами документации.
Ну, можно писать ручками всё, что тулзы генерят, но зачем?
В команде, в общем-то, весьма довольны тулзами. Которые работают везде и всегда. Если у вас пишут так, что версии библиотек и систем прибиты гвоздями, то это у вас какая-то проблема
В общем-то, мне с начала показалось, что диалог пошел конструктивный, но теперь я вижу, что ты, как и некоторые другие в данном топике, просто хочешь убедить меня в своей точке зрения, что никакой визард не нужен и все решается батниками и тп.
Я вас услышал, но не считаю вас правыми, так все предлагаемые способы уже опробованы и не кажутся мне удобными
M>>> [В визардже] Будет десяток страниц с простыми вопросами
M>>Сделай то же самое в документации
M>Еще 100 страниц документации написать? Так себе идея
То есть документацию в стиле «вопрос-ответ» ты писать не собираешься, но в визарде ты ее обязательно напишешь. Ага, как же.
M>>Вместо того, чтобы избавится от тулзов со 100 опциями и 10 страницами документации. M>Ну, можно писать ручками всё, что тулзы генерят, но зачем?
Где ты увидел требование писать что-то ручками?
M>В команде, в общем-то, весьма довольны тулзами. Которые работают везде и всегда. Если у вас пишут так, что версии библиотек и систем прибиты гвоздями, то это у вас какая-то проблема
Где ты увидел хоть что-то про пррибитие чего-либо гвоздями куда-либо?
M>В общем-то, мне с начала показалось, что диалог пошел конструктивный, но теперь я вижу, что ты, как и некоторые другие в данном топике, просто хочешь убедить меня в своей точке зрения, что никакой визард не нужен и все решается батниками и тп. M>Я вас услышал, но не считаю вас правыми, так все предлагаемые способы уже опробованы и не кажутся мне удобными
Нет. Все способы не опробованы, что явно следует из твоих слов. Ты же уверен, что где-то есть серебрянная пуля, которая магическим способ будет понятна, магическим способ будет работать везде и всегда, магическим способом избавляет тебя от написания понятной и простой пошаговой документации, которая магическим способом не будет требовать поддержки, развития, магическим способом будет понятна всем и т.п.
На все замечания, что это не так, ты отвечаешь в духе «все будет зашибись, это вы ничего не понимаете».
M>>>Потому что это фиксированный набор с заранее известными параметрами. Там нет никаких «универсальных визардов». S>>ЕМНИП в QtCreator именно универсальный визард для новых проектов, возможные параметры, на основе которых генерится GUI, хранятся где-то в текстовом виде.
M>Это опять вендор-лок. Так-то в итоге "параметры, на основе которых генерится GUI", у всех хранятся где-то в каком-то текстовом виде
А магический интерпретатор магического DSLя для магического всемогущего визарда не будет вендор-локом, естественно. Он магическим образом возникнет из неоткуда и сразу решит все твои проблемы.
Здравствуйте, Mamut, Вы писали:
M>>>>Потому что это фиксированный набор с заранее известными параметрами. Там нет никаких «универсальных визардов». S>>>ЕМНИП в QtCreator именно универсальный визард для новых проектов, возможные параметры, на основе которых генерится GUI, хранятся где-то в текстовом виде.
M>>Это опять вендор-лок. Так-то в итоге "параметры, на основе которых генерится GUI", у всех хранятся где-то в каком-то текстовом виде
M>А магический интерпретатор магического DSLя для магического всемогущего визарда не будет вендор-локом, естественно. Он магическим образом возникнет из неоткуда и сразу решит все твои проблемы.
Здравствуйте, Marty, Вы писали:
M> Здравствуйте!
M>Регулярно встречается такая проблема (по крайней мере), что делаешь ты что-то раз, другой, а на третий раз — понимаешь, что это уже рутина, и нужен какой-то визард (мастер), который бы ты вызвал — клик-клик, пару полей забил и — вот тебе сгенеренные файлики.
Здравствуйте, Marty, Вы писали:
M>ЗЫ Хотел сначала в "Средства разработки" закинуть, но, наверно, тема больше для холивара
А чего не сделать его в виде опроса на каком-нибудь популярном движке опросов типа Google Forms?
Результаты скидываются в спредшит; дальше запускаете свой скрипт, который интерпретирует эти ответы в нужном вам виде и порождает хоть чёрта лысого.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Здравствуйте, Marty, Вы писали:
S>>Скажем, в повершелле как раз это всё решено очень даже неплохо. Всяко лучше, чем в самопальном GUI-визарде.
M>Это как? Вот у меня есть опция, где-то в коде она проверяется, что равна одному из пяти-десяти фикс значений, и что, такой автокомплит бывает?
Конечно. ValidateSet.
M>Или, например, сам шаблон задается в ходе выбора в визарде, и последующие возможные переменные зависят от того, какой шаблон выбран. Как вот это всё нормально в консольке организовать?
Да, такое тоже возможно. Parameter Sets.
Здравствуйте, Sinclair, Вы писали:
M>>ЗЫ Хотел сначала в "Средства разработки" закинуть, но, наверно, тема больше для холивара S>А чего не сделать его в виде опроса на каком-нибудь популярном движке опросов типа Google Forms? S>Результаты скидываются в спредшит; дальше запускаете свой скрипт, который интерпретирует эти ответы в нужном вам виде и порождает хоть чёрта лысого.
Здравствуйте, Sinclair, Вы писали:
S>>>Скажем, в повершелле как раз это всё решено очень даже неплохо. Всяко лучше, чем в самопальном GUI-визарде.
M>>Это как? Вот у меня есть опция, где-то в коде она проверяется, что равна одному из пяти-десяти фикс значений, и что, такой автокомплит бывает? S>Конечно. ValidateSet.
M>>Или, например, сам шаблон задается в ходе выбора в визарде, и последующие возможные переменные зависят от того, какой шаблон выбран. Как вот это всё нормально в консольке организовать? S>Да, такое тоже возможно. Parameter Sets.
S>https://adamtheautomator.com/the-powershell-parameter/
Ну, в принципе, довольно интересно. Но всё же не понятно, чем консолька лучше гуя?
Можно ли там выбор из списка организовать? Множественный выбор из списка, и тп?
Откат на пару шагов назад с выбором новых значений и переходом по другой ветке?
Здравствуйте, Marty, Вы писали:
M>Но это не снимает вопроса способе задания аргументов
Всмысле? я ж явно показал — json.
Или, если мимо автоматизирующей сборку тулзы, то в environment запихнуть можно. Примеры по ссылке смотрел?
Здравствуйте, Marty, Вы писали:
M>Но всё же не понятно, чем консолька лучше гуя?
Чуть более, чем всем. Гуй не атоматизируешь так же просто, как и консоль.
M>Можно ли там выбор из списка организовать? Множественный выбор из списка, и тп? M>Откат на пару шагов назад с выбором новых значений и переходом по другой ветке?
Ну так можно и dialog пользовать, ежели так нужен интерфейс