Задать вопрос
  • Как более точно оценить время разработки ПО?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Оценка времени приходит с опытом.
    Никакая инструкция или утилита не поможет за вас рассчитывать время вашей творческой работы.

    В плане методологии - Agile с правильной постановкой позволяет решить эту задачу в долгой перспективе - когда на каждый спринт выделяются задачи, выполняются, и после спринта проводится ретро, где выясняется насколько поставленные задачи были выполнены, и нужно ли
    а) увеличивать предполагаемое время
    б) уменьшать предполагаемое время)
    в) лучше декомпозитить
    г) выделять инвестигейшн задачи с определением времени на ее решение как отдельную задачу
    д) другие варианты, например выделять xx% буферного времени без уточнения на какую задачу они пойдут, рефакторинг самих команд, привлечение аналитиков и на что еще фантазии хватит.

    Таким образом, если определенная команда работает продолжительное время, с каждой итерацией (каждым спринтом), перфоманс команды становится точнее, задачи становятся более понятными.
    При переходе в новую команду - начинай с начала (с учетом опыта).

    Подытожу этот словесный поток:
    Помогает опыт. Индивидуальный и командный.
    Ответ написан
    Комментировать
  • Почему в среде Linux админов Vim - это тру, а Nano - для слабаков?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Исторически vi более старый, при этом весьма функциональный.

    Многие вещи в vi работают без проблем в разных условиях - например в нестандартных или легаси терминалах, где есть проблемы с управляющими символами. vi весьма устойчив к очень медленным подключениям. При этом есть огромное количество функционала и хоткеев.
    Если поработать в vi некоторое время, начинаешь ценить его подход к работе.

    Я вот вырос на волков коммандере и обожаю редактор FAR как и сам менеджер.
    Но при этом в линуксе предпочитаю пользоваться vi и считаю его даже ближе к far editor, чем nano, хотя визуально кажется наоборот.
    Также максимально избегаю midnight commander, пользуясь просто командной строкой, хотя mc - панельный менеджер.
    Ответ написан
    2 комментария
  • Возможно ли динамически сформировать файл конфигурации, если требует указать к нему путь?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    kesl-setup.pl --autoinstall=<полный путь к исходному конфигурационному файлу>

    В данном случае у вас не линукс устанавлвиает что-то с конфигурационным файлом а конкретно перловый скрипт kesl-setup.pl использует опцию --autoinstall и ожидает что параметром будет имя файла. Поэтому именно в этом случае понятно, что подставить что-то другое вместо имени файла нельзя, либо посмотреть и поправить перл скрипт.

    Тоже касается и всех других программ - если они ждут имя файла, значит им нужно предоставить имя файла, если им можно скормить просто кусок текста, можно перенаправить кусок текста сгенерированного динамически.

    Но в вашем случае - проще генерировать файл в /tmp

    (возможно в директорию "tmp", но не возникнет ли ситуация что ОС именно сейчас решит почистить "tmp")?

    ОС вообще не чистит /tmp - это задача вашего скрипта чистить /tmp
    В общем случае, /tmp в линуксах монтируется как рамдиск в памяти и "автоматом" чистится при рестарте ОС.
    Так что если ваш скрипт за собой не будет удалять сгенерированные файлы, то в /tmp можно смело хранить файлы до ребута.
    Ответ написан
    1 комментарий
  • Как узнать, какой язык выбран?

    saboteur_kiev
    @saboteur_kiev Куратор тега Python
    software engineer
    Колупать в сторону Windows API
    Не забывай, что в винде может быть один язык для всех окон или наоборот, у каждого окна свой, поэтому нужно сперва найти нужный процесс.
    Что-то вроде такого:

    import ctypes
    user32 = ctypes.WinDLL('user32', use_last_error=True)
    curr_window = user32.GetForegroundWindow()
    thread_id = user32.GetWindowThreadProcessId(curr_window, 0)
    # Made up of 0xAAABBBB, AAA = HKL (handle object) & BBBB = language ID
    klid = user32.GetKeyboardLayout(thread_id)
    lid = klid & (2**16 - 1)
    lid_hex = hex(lid)

    Значения для US и RU должны быть типа
    '0x409' - US
    '0x419' - RU
    Ответ написан
    1 комментарий
  • Для чего нужны Primary (основные) группы для пользователей в чем смысл?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    В POSIX системах для каждого файла и для каждого процесса должны быть определены владелец и группа. Все основные права доступа завязаны на эти UserID и GroupID.

    Вот собственно когда пользователь запускает процесс или создает файл/директорию, для них владельцем устанавливается этот пользователь, а группой устанавливается праймари группа этого пользователя.
    Ответ написан
    Комментировать
  • Как добавить пользователя на нескольких primary групп,на Linux?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    1. Может быть только одна Primary group и никак иначе
    2. не факт, что все группы пользователя можно найти в файлах, мало ли как pam настроен.
    3. А так - в /etc/passwd primary группа, в /etc/groups все остальные группы
    Ответ написан
    1 комментарий
  • Можно ли сделать бота для браузерной игры?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    все можно.
    Но для браузерной игры может проще парсить html-dom?
    Ответ написан
  • Как вывести % в новый файл?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    В командной строке пиши
    echo if %aaa%==1 goto test > out

    В батнике пиши
    echo if %%aaa%%==1 goto test > out
    Ответ написан
    2 комментария
  • Что для вас является признаком, что жесткий диск пора менять?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Если диск внезапно начал тупить - менять сразу.
    А так - smart
    Для серсерных - есть мониторинг и smart ну и собственно если рейд показал сбой

    А для домашнего диска в принципе предпочитаю раз в 5-7 лет менять основной диск, даже если с ним все в порядке. Ибо лучше я его поменяю в контролируемых условиях, неторопясь, чем останусь без рабочего компа и с необходимостью покупать/менять/ставить, настраивать здесь и сейчас без рабочего инструмента. А старый диск можно под файловую свалку.
    Ответ написан
    2 комментария
  • Как удалить файлы в директории но оставить файлы по маске?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    find public_html/images/test/01 -type f ! -name '*_large.*' ! -name '*_thumbnail.*' -delete
    Ответ написан
    1 комментарий
  • Как вывести дополнительные строки после найденной на Linux?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    чем не подходит -A?
    Ответ написан
  • Какой командой можно заменить grep -A?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    а зачем -A нужно заменять? почему не добавить?
    Ответ написан
    Комментировать
  • Как в Excel Удалить данные с ячейки но при этом оставить данные в общей сумме?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    либо не нужно обнулять таблицу, либо нужно скопировать и вставить значение, а не формулу.
    Ответ написан
    Комментировать
  • Как проверить производительность компьютеров онлайн?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    winsat formal -restart clean
    Ответ написан
    Комментировать
  • Стоит ли учить программирование по старой книге?

    saboteur_kiev
    @saboteur_kiev Куратор тега Книги
    software engineer
    Учить язык следует на практике. Если по данной книге не возникает проблем с практическими задачами - учите.
    И стоит тратить меньше времени на поиск САМОЙ ЛУЧШЕЙ КНИГИ, лучше уже начинать что-то делать, а книг можно и несколько прочитать.
    Ответ написан
    Комментировать
  • Какой минимум знаний должен быть у Системного администратора Linux?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Много чего можно делать. Вопрос оценки сложности тут сам по себе непростой, потому что на самом деле ВСЕ есть в документации, и вопрос только в количестве времени которое вы провели настраивая разные вещи.

    Знание bash на адекватном уровне. Без скидки что есть всякие python/go/js и др, а потому что bash это шелл и знание bash без понимания множества нюансов posix систем будет как знание языка программирования без стандартных библиотек.
    Поднять и настроить с нуля систему мониторинга, которая будет мониторить все критические ресурсы и выводить их в адекватном читабельном виде.
    Поднять и настроить ldap вместо AD для локалки
    Поднять vpn для удаленных сотрудников с доступом к офисным ресурсам
    Если нужно разворачивать и обслуживать много линуксов, уметь работать с оркестратором, типа ansible
    Траблшутинг, сервисы, работа с логами.
    Почта, DNS чтобы работало, а не сразу в спамлист.

    А так - понятно, что все должно привязываться к приложениям и субд, как минимум к самым популярным.
    Ответ написан
    Комментировать
  • Какие есть альтернативные методы загрузки и/или дешифрации Windows?

    saboteur_kiev
    @saboteur_kiev Куратор тега Windows
    software engineer
    Можно и просто штатное шифрование и двухфакторная авторизация через внешний какой-нить rsa сервис, который руководство компанией может оперативно отключить, и тогда сотрудник даже с паролем не будет иметь возможности залогиниться и расшифровать.
    Ответ написан
  • Компилятор c++?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    То, что ты ищешь, называется среда разработки или IDE, а не "компилятор как интерпретатор"

    погугли python ide, например PyCharm
    Ответ написан
    Комментировать
  • Как работают сессии матчей в онлайн играх?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    Является ли каждая игровая сессия, в которой сидит по 10 игроков, новым процессом на сервере? Или это реализовано как-то по другому?

    По-разному.
    Может быть отдельный процесс.
    Может быть отдельный тред.
    Может быть вообще один процесс на все.

    Зависит от игры, от матча, от требований к быстродействию и синхронизацию.
    Ответ написан
    Комментировать
  • Можно ли разогнать мой процессор?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    В процессорах не шарю, но потом научусь делать разгон

    Разгоном занимаются те, у кого есть лишние деньги на случай если все сгорит, и те кто шарят.
    Не занимайтесь фигней.
    Ответ написан
    1 комментарий