• Как перемещаться по коммитам git, чтобы не потерять их?

    @abcd0x00
    Как последовательно пробежаться по более ранним коммитам не теряя более поздних?

    Ты и так их не теряешь, они расположены в ветке и всегда доступны через её имя. Мало того, переходить на коммит мало когда надо, ты всё равно его не изменишь, потому что вся история после него опирается на него. И ты можешь от него только отрастить ветку, а потом влить её на самую верхушку всего проекта. Есть ещё rebase, который тоже делать не рекомендуется, так как он нарушает коллективную разработку и генерит все коммиты после изменённого заново с новыми хешами.
  • Как сделать равномерное распределение фамилий по группам?

    @abcd0x00
    Требуется распределить их по буквенным группам аля А-В с таким расчетом например что если много фамилий начинающихся на А, В, Д, Е, Ц, и мало на остальные буквы, то группы должны сформироваться А-Б, В-Д, Е-Ж, З-Ц, Ч-Я.

    Не понял принцип группирования. Какая-то противоречивая муть. Как там могут буквы В и Д образовывать одну группу? Тогда уж А и В должны образовывать одну группу. Либо оно изначально такое, либо ты его так описал сюда.
  • Как запретить python3 использовать stdin как источник комманд?

    @abcd0x00
    Ты просто что-то не то делаешь. Неизвестно, что внутри foo.py, там какая-то ошибка, похоже. Оно и так всё на input() подаёт, так как input() берёт из sys.stdin всё.
  • Как эмулировать функционал из emacs в vim?

    @abcd0x00
    То что ты описал это Dired-mode

    То, что он описал, - это shell-mode (запускается через M-x shell). Как раз консоль, в которой можно и команды выполнять, и сразу лазить. А есть ещё term - тоже иногда нужно, в term'е можно даже vim запустить и юзать.
  • Как в консоли сделать замену подстрок в Linux?

    @abcd0x00
    Saboteur:
    вы забыли указать sed -r, чтобы включить поддержку регулярных выражений

    Регулярные выражения там и так поддерживаются, просто их несколько видов. -r включает расширенные регулярные выражения, в которых нужно просто по-другому экранировать метасимволы. А по умолчанию в sed'е используются элементарные регулярные выражения.

    info sed

    The only difference between basic and extended regular expressions is in
    the behavior of a few characters: `?', `+', parentheses, braces (`{}'),
    and `|'. While basic regular expressions require these to be escaped
    if you want them to behave as special characters, when using extended
    regular expressions you must escape them if you want them _to match a
    literal character_. `|' is special here because `\|' is a GNU
    extension - standard basic regular expressions do not provide its
    functionality.
  • Как в консоли сделать замену подстрок в Linux?

    @abcd0x00
    Saboteur: для вставки в начало можно использовать циркумфлекс.
  • Как работать с Git на нескольких компьютерах над одним коммитом?

    @abcd0x00
    Mubat: в общем патчи - это разовые вещи, потому что после каждого такого переноса надо будет удалять домашний репозиторий и снова его делать с рабочего, когда опять нужно будет что-то доделать. А клонирование даёт возможность импортировать через ветки. Если ты дома сделал ветку, то на работе ты её можешь втянуть и влить ещё. При этом даже если ты долго их не синхронизируешь, то всё равно можно будет спокойно вытолкнуть ветки (и теги) с рабочего в домашний, который лежит на флешке. Там даже можно сделать, когда домашний лежит на домашнем компе, рабочий - на рабочем, а их клон лежит на флешке и на рабочем ты можешь выталкивать на флешку и стягивать с флешки и на домашнем ты тоже можешь выталкивать на флешку и стягивать с флешки. И тогда тебе открывают возможности по работе с целыми ветками. И при этом репозиторий скрыт от чужих. А на флешке его ещё и зашифровать можно (на случай её потери).
  • Как работать с Git на нескольких компьютерах над одним коммитом?

    @abcd0x00
    Mubat: патчи можно перекидывать, но только недолго. Дело в том, что редактирование проекта может происходит и там и там независимо, при этом нужно делать коммиты (если изменений много). Так вот коммиты с одними и теми же изменениями будут считаться разными (разные хеши), так как каждый раз делаются вручную. Поэтому если однажды понадобиться синхронизировать домашний и рабочий проект, то эти "одинаковые" коммиты просто будут считаться разными и будут дублировать одни и те же изменения - получится бардак в истории как минимум. А вот при выталкивании коммитов и скачивании коммитов, эти коммиты считаются одним и тем же, поэтому проекты будут иметь одни и те же коммиты и клонирование рабочего репозитория куда-нибудь будет равно клонированию домашнего репозитория туда же. Так что, если чуть-чуть доделывается, можно перекидывать патчи (даже целые цепочки патчей); если же это систематическая работа, то нужно настраивать источники.
  • Как разбить число на элементы массива в с++?

    @abcd0x00
    AleexF:
    Вот это тоже хрень полная
    const int N = (int)1e5+1;

    Во-первых в C++ не принято юзать такое приведение (оно для совместимости с сишными программами оставлено), а во-вторых, оно там не нужно, потому что и так выполняется.
  • Как разбить число на элементы массива в с++?

    @abcd0x00
    AleexF: а зачем укоротил? Чтобы показаться умнее? Так вот, код укорачивается не за счёт стирания переводов строк, а за счёт применения более оптимального алгоритма. Вот тогда строки и сокращаются.
    Ну, и почитай книги какие-нибудь, чтобы видеть эталон.
  • Как разбить число на элементы массива в с++?

    @abcd0x00
    AleexF:
    Вариант покороче:
    ...
    for (int i = 0; i < s.length(); i++) a[idx++] = s[i] - '0';

    Не пиши в одну строку, это вредно для отладки. Там тебе номер строки напишут и скажут, что там ошибка, а ты будешь гадать, а где в этой строке ошибка, ведь там миллион операторов разных. И в результате будешь разбивать её обратно в тот вид, в котором она и должна была быть изначально.
  • Как использовать результат команды ls в команде mv?

    @abcd0x00
    Rsa97: да, он у тебя в один ряд выводит только потому, что там нет двойных кавычек. echo без двойных кавычек будет переводы строк в пробелы превращать.
  • Как использовать результат команды ls в команде mv?

    @abcd0x00
    Rsa97: можешь через /bin/ls проверить, берёт ли head -1 один файл. У меня берёт. А почему /bin/ls - потому что в системах часто алиасят ls на ls -1.
  • Как использовать результат команды ls в команде mv?

    @abcd0x00
    Rsa97:
    mv `ls -1 old_name` new_name

    А нафиг ты единицу там ставишь? Сколько бы там файлов ни было, нужно применить head.
    [guest@localhost sh]$ echo "`ls *.sh`"
    iters_meth.sh
    t.sh
    [guest@localhost sh]$ echo "`ls *.sh | head -1`"
    iters_meth.sh
    [guest@localhost sh]$
  • Какие есть подводные камни в такой bash инструкции?

    @abcd0x00
    Владимир: find сама может всё удалять, не нужно там ни head, ни xargs. А вот то, что ты написал, записывается просто через -mtime 2 - это и есть старше одного и младше трёх.
  • Какие есть подводные камни в такой bash инструкции?

    @abcd0x00
    Ты не описал задание, как-то странно выглядит условие поиска. А чтобы путь не затрагивало, нужно использовать -mindepth .
  • Область использования языка GO?

    @abcd0x00
    bnytiki:
    Юнит тестов недостаточно.

    Для проверок типов - вполне достаточно. Если тебя волнует, чтобы туда не могли передать неправильный тип, просто делается юнит-тест, проверяющий это.
  • Область использования языка GO?

    @abcd0x00
    bnytiki:
    То, что в языках со статической типизацией выявляет компилятор еще до первого запуска программы, в языках с динамической типизацией может вылезти боком даже через полгода после запуска в эксплуатацию.

    Ничего там не вылезет, для этого есть юнит-тесты. Кто без них сейчас пишет? Если пишешь без тестов, там всё равно будет куча малозаметных логических ошибок. А если пишешь с тестами, то ничего не пропустишь независимо от типизации.
  • Как научиться делать сортировки любой сложности в JavaScript?

    @abcd0x00
    Функции map() и reduce() к сортировкам не относятся.
    Функция sort() - функция сортировки, внутренности которой знать не надо, чтобы сортировать.
  • Как научиться делать сортировки любой сложности в JavaScript?

    @abcd0x00
    Это не сортировки, а функциональная парадигма программирования. Сортировки обычно только изучаются, а применяются потом встроенные функции (которые уже оптимизированы).