• Что делать дальше?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    просто хотел узнать, что делали вы, после того как вы закончили основы

    У меня не было курсов. И Тостера тоже не было. Доступ в Интернет был, но не чаще, чем раз в неделю, на час и на скорости примерно 15 килобит в секунду. У меня даже IDE не было. Был только учебник, текстовый редактор, компилятор с интерфейсом командной строки и желание стать программистом. Я прочитал учебник и пытался писать программы. Когда не получалось, перечитать учебник ещё и ещё раз, экспериментировал с кодом снова и снова. А так как писал я на Ассемблере, ошибки в программах в лучшем случае заканчивались её молчаливым закрытием, а в худшем перезагружали или завешивали компьютер. Через год упорных ежедневных стараний я достиг уровня достаточного, чтобы устроиться на работу.

    Ну как, помогло вам знание о том, что делал я?
    Ответ написан
    2 комментария
  • Как обработать ответ командной строки стандартными средствами?

    @res2001
    Developer, ex-admin
    Обычно для обработки вывода команд в батнике загоняют команду в цикл вида:
    for /f "tokens=xxx delims=yyy" %%a in ('тут нужная команда') do (
       echo %%a
    )

    и внутри цикла получают доступ построчно к выводу команды.
    Разбивать строки вывода на лексемы, устанавливать разделители лексем, пропускать строки в начале можно с помощью параметров цикла (указаны в кавычках).
    Для справки смотрите for /?
    Ответ написан
    Комментировать
  • Как обработать ответ командной строки стандартными средствами?

    Oxyd
    @Oxyd
    Linux enthusiast
    program > file
    program > file 2>&1
    program | program2
    program | program2 2>&1

    1. Стандартный вывод команды перенаправить в файл.
    2. Стандартный вывод и вывод ошибок перенаправить в файл.
    3. Стандартный вывод программы направить на стандартный ввод программы2, для обработки.
    4. Стандартный вывод и вывод ошибок направить на ввод программы2, для обработки.
    Ответ написан
    5 комментариев
  • Как разложить изображение по частотным октавам и потом снова собрать?

    @U235U235
    Эта идея называется вейвлет-разложением.
    В частности, то что вы описываете, похоже на вейвлеты Хаара.
    Вейвлеты используются, например, в jpeg2000 кодеках
    Примеры редактирования картинок ("в отдельном слое можно убрать крупные морщины и прыщи, не повредив мелкую текстуру кожи") есть в Wavelet toolbox, Matlab.
    Ответ написан
    Комментировать
  • Будет ли работать неуправляемый коммутатор между двумя управляемыми?

    @tamogavk
    @deni4ka
    Транк работать будет, если неуправляемый поддерживает mtu свыше 1514
    Ответ написан
  • IP Камера с распознованием автомобильных номеров?

    A_M
    @A_M
    Основная специализация - системы видеонаблюдения
    https://www.beward.ru/katalog/ip-kamery/ip-kamery-...
    Но это чисто тушка и в парковочном исполнении. Машина должна полностью остановиться.
    Ответ написан
    Комментировать
  • По какой причине RAID1 при удалении одного из дисков блокируется?

    Melkij
    @Melkij
    PostgreSQL DBA
    Речь видимо о linux raid и конкретно выводе /proc/mdstat

    Литера S в sdc1[0] (S) - обозначает spare диск, а не диск массива. То есть у вас в массиве md1 нет ни одного диска с данными. Необратимая потеря существовавщих данных, некуда писать новые. Потому массив переведён в статус неактивен, он бесполезен и требует вмешательства администратора.

    Откуда в raid1 мог остаться единственный spare - например не успели синхронизировать данные.
    Ответ написан
  • Как преподавать алгоритмы и структуры данных слепому?

    @evgeniy_lm
    принтер Брайля и прочая фигня это, конечно, круто, но ни кто не написал о том, что алгоритмы не обязательно записывать в виде схемы. Ни кто не запрещает их описывать словами в виде последовательности пунктов. Если препода уважают ваше желание учится они должны индивидуально изменить программу обучения
    Ответ написан
    7 комментариев
  • Как zsh организовывает обработку такой команды: "cat &"?

    gbg
    @gbg
    Любые ответы на любые вопросы
    Это личное дело терминала. При запуске процесса терминал подсовывает ему свои дескрипторы in, out, err.
    Когда вы запускаете процесс на фоне, терминал не цепляет эти потоки к экрану и клавиатуре, вот и все.

    То есть, это не какой-то системный вызов, а реализация определенной стратегии работы.
    Ответ написан
    3 комментария
  • Что в сленге означает "замапить"?

    @majstar_Zubr
    C++, C#, gamedev
    Это англицизм-синоним слову "отобразить". Но обычно относится к смыслу "сопоставление значений".

    Обычно это означает "произвести отображение контекста А на контекст Б". Результатом отображения является набор соответствий значений.
    Это очень высокоуровневое и обобщённое понятие.
    Но оно обозначает прямой процесс построения отображений с помощью лишь одних значений и соответствий.

    Англицизм употребляется потому, что весь процесс программирования состоит из отображений, это слово настолько перегружено, что просто бесполезно.

    Трансляция - процесс передачи из одного контекста со своей терминологией в другой контекст со своей терминологией. Если информация в одном контексте кодируется определённым набором символов, то в процессе трансляции построится абстрактное синтаксическое дерево для контекста А, потом оно будет по каким-то правилам отображаться в АСД для контекста Б, по которому будет сконструирована
    новая форма отображения информации, но уже в терминах контекста Б.

    Если вместо трансляции произвести "маппинг", то у нас информация в контексте А будет разбита на куски, информация в контексте Б будет разбита на куски, и маппинг выдаст нам набор стрелочек вида кусок А-> кусок Б.

    Маппинг - это всегда про значения. Значения кодов клавиатуры символам или функциям, enum и все задачи, в которых вы используете key-value storage и т.д. и т.п.
    Ответ написан
    Комментировать
  • Как подменить диск в Linux?

    Melkij
    @Melkij
    PostgreSQL DBA
    добавить диск, смонтировать в другое место
    сделать rsync
    остановить приложение
    сделать rsync
    отмонтировать старый диск
    перемонтировать новый диск в /mnt/files
    запустить приложение

    Если между диском и ФС случайно оказался LVM - то смигрировать силами LVM без остановки приложения.
    Ответ написан
    Комментировать
  • Как сберечь жизнь аккумулятора ноутбука?

    @joginzbajin
    У Lenovo есть утилита Power Manager. Поищите для вашей модели.
    В ней могут быть (для разных моделей по-разному) настройки для продления жизни батареи.
    тут обсуждали
    Но поможет это реально или нет - зависит от вашего ноута (например, родные батареи ThinkPad-ов более живучие, чем у "бытовых" серий) и как тут уже говорили - батареи начинают деградировать сразу с момента выпуска...
    В общем, не перегревайте, не переохлаждайте и не парьтесь :)
    Ответ написан
    Комментировать
  • Где найти картинки товаров для интернет-магазина?

    PageAuditRU
    @PageAuditRU
    Senior SEO Анализатор
    Сделайте дома маленькую фотостудию: возьмите однотонное банное полотенце, повесьте его вертикально в качестве фона, откройте холодильник, возьмите продукты и разместите их на полотенце, смартфоном сфоткайте еду. Получите таким образом определённое количество изображений для кейса. Можно к соседям сходить и у них в холодильнике покопаться. Можно у младшего брата игрушки на время позаимствовать и их отфоткать.
    Ответ написан
    Комментировать
  • Как написать правило для крона?

    Oxyd
    @Oxyd
    Linux enthusiast
    Разбить на два задания.
    0 01-23/3 * * *
    30 02-23/3 * * *

    Диапазон в втором задании включает 23:30
    Ответ написан
    Комментировать
  • Как написать правило для крона?

    DevMan
    @DevMan
    самое простое - разбить на две команды. типа:
    0 1,4,7,10,13,16,19,22 * * * command
    30 2,5,8,11,14,17,20 * * * command


    можно попытаться сократить, но больше времени потратится на отладку/тестирование.
    Ответ написан
    6 комментариев
  • Почему ломается UBUNTU?

    @Karpion
    Ну, надо делать изменения по одной штуке, и после каждой - перезагружать компьютер. Тогда станет ясно, какая операция ломает систему.

    А зачем "поменял рекурсивно права на папке /var/www"? На что поменял?

    И какие сообщения выдаёт "tty консоль"?
    Ответ написан
    6 комментариев
  • Браузер для чувствительной инфы в виртуальной машине, имеет ли смысл?

    CityCat4
    @CityCat4 Куратор тега Информационная безопасность
    //COPY01 EXEC PGM=IEBGENER
    на хосте стоит винда, на ней могу запустить серый файл

    Боже, этому правилу лет так двадцать (ну в общем столько же, сколько первым вирусам) - не какать там, где сидишь :)
    А вот этому - несколько тысяч лет. И оба они примерно обо одном и том же - запускать всякую непроверенную гадость нужно только на изолированной машине. Но ни в коем случае не на хосте.
    Параноики обычно держат отдельную физическую машину, отключенную ото всего - как в Первых отделах в СССР.
    Параноики меньшего уровня заводят виртуалку, запускают в ней что надо, потом виртуалку удаляют и при необходимости снова разворачивают ее из некоего фиксированно чистого состояния.
    Параноики еще меньшего уровня просто не читают весь этот Ваш бред про диассемблинг и декомпиляцию - до тех пор, пока за Вами не стоят деньги или политические интересы - Вы никому нафиг не интересны.
    (что не отменяет необходимости запускать всякую лажу на отдельной изолированной виртуалке - просто так, для дополнительной защиты)
    Ответ написан
    3 комментария
  • Как реализовать промежуточный сервер?

    @Karpion
    Ну, эту задачу решает VPN...
    Ответ написан
    Комментировать
  • Как преобразовать любой файл в картинку png?

    twobomb
    @twobomb
    Вот наляпал на C#
    namespace ConsoleApplication1{
        class Program{
            static void Main(string[] args){
                var file = File.Open(@"D:\myfile.exe", FileMode.Open);
                var byteLen = file.Length;
                int size = (int)Math.Floor(Math.Sqrt(byteLen / 4));
                Bitmap bm = new Bitmap(size,size);
                for (int y = 0; y < size ; y++){
                    for (int x= 0; x < size ; x++){
                        byte[] rgba = new byte[]{ 0xFF,0xFF,0xFF, 0xFF};
                        short cnt = 0;
                        while (cnt < 4 && file.CanRead){
                            byte[] buff= new byte[1];
                            file.Read(buff,0,1);
                            rgba[cnt++] = buff[0];
                        }
                        bm.SetPixel(x, y, Color.FromArgb(rgba[0], rgba[1], rgba[2], rgba[3]));
                    }    
                }
                file.Close();
                var saveFile = File.Open(@"D:\myimg.png", FileMode.Create);
                bm.Save(saveFile,ImageFormat.Png);
                saveFile.Close();
            }
        }
    }

    Файл 907Кб

    5e2eb0bfacc6c816460507.png

    P.S. Сделал веб версию
    Ответ написан