• Для кого все же предназначен код, полученный из CIL (байт-кода .net)?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Исполняемый файл - это не прямой набор инструкций. Он может иметь специальную структуру - .com, exe, линуксовые и юниксовые бинарники отличаются - CIL компилируется в машинный код, но в результате создается не просто байткод команд, а бинарник определенного формата, с которым умеет работать операционка - машинный код должен каким-то образом загрузиться в память, возможно даже не весь а частями, точка входа должна быть сообщена процессору и так далее.
    Сейчас практически несуществует линейных программ, которые написаны таким образом, что выполняются в моносреде - все пишется из расчета многозадачных ОС.

    Таким образом, в CLI обычный машинный код, который выполняется процессором, но который содержит определенные закладки, вызовы функций операционных систем для того, чтобы этот код успешно работал в определенной ОС, чтобы он не загребал под себя 100% CPU на пустые циклы и так далее.
    Это не значит, что там немашиный код, это значит что машинный код написан для работы в определенных условиях и содержит определенные вызовы.
    Ответ написан
  • Как удалённо работать если заблокируют Ру сектор?

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

    Если заблокируют ру-сектор, либо становитесь безработным, либо едете в другую страну.
    Либо - митинговать пока не победит справедливость.
    Ответ написан
  • Как сделать программу, которая вытягивала бы определенную информацию с веб страницы?

    saboteur_kiev
    @saboteur_kiev Куратор тега C++
    software engineer
    wget.exe
    curl.exe
    парсить можно через grep.exe

    Или подучите С++ и напишите программу которая выполняет http запрос и ищет строки.
    Ответ написан
    Комментировать
  • Как подставить фейковый IP?

    saboteur_kiev
    @saboteur_kiev Куратор тега Компьютерные сети
    software engineer
    X-Forwarded-For это HTTP заголовок. На удаленном сайте могут просто игнорировать его, используя просто REMOTE_ADDR или стандартный заголовок "forwarded", поскольку X-Forwarded-For на текущий момент все еще не является стандартом.

    Поэтому VPN - самый надежный вариант.
    Ответ написан
    Комментировать
  • Очень долго грузится Windows 10 с SSD, как исправить(логи есть)?

    saboteur_kiev
    @saboteur_kiev Куратор тега Windows
    software engineer
    В указанных логах нельзя найти проблему. Это просто список драйверов и служб, которые загрузились.

    Не указано ни сколько это "долго", ни какая именно служба грузится дольше, чем ожидается.

    Что посторонний человек должен понять в данной фразе?:
    "Всё это стало происходить после исправления диска(но на самом деле SSD)"
    Ответ написан
    6 комментариев
  • Управление Windows ПК без AD?

    saboteur_kiev
    @saboteur_kiev Куратор тега Windows
    software engineer
    1. Поднять sshd и выполнять консольные команды удаленно?
    2. Авторизироваться под локальными учетками. Завести везде отдельную админскую учетку с одним паролем и можно без АД.
    Ответ написан
  • Обязательно ли главной страницей должен быть Index.html?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Можете поменять.

    Но это дефолтное значение для index page в настройках веб сервера. Также там обычно бывает index.php, index.htm, причем порядок имеет значение.
    Если хотите, чтобы ваше приложение без перенастроек сразу запускалось на любом хостинге, лучше придерживаться дефолтных настроек.
    Ответ написан
    Комментировать
  • Какие DevOps практики(инструменты) используете для разворачивания инфраструктуры?

    saboteur_kiev
    @saboteur_kiev Куратор тега Организация работы
    software engineer
    Пример: у меня есть плейбук ansible который разворачивает гитрепозитарий на групе серверов, но я примерно понимаю, что скорее всего, у "больших дядек" это делается не через плейбук, а через jenkins + docker + webhook, но на практике взглянуть на такое я не могу :)


    У больших дяденек это и руками может делаться. Нет одного лучшего способа, есть определенные правила игры (бюджет, количество серверов, количество компонентов и стек) - и выбираете себе удобные инструменты.
    Тоже использование докера - не всегда оправдано.

    Зачастую самые удобные инструменты это не самые лучшие в мире, а те, которые комфротны для вас и разработчиков (но это не значит, что не нужно периодически подучивать новое и пытаться смотреть на свою инфраструктуру незамыленным глазом).

    Старайтесь не оптимизировать что-либо, а решать конкретные проблемы, типа "вот тут я трачу еженедельно xx часов на рутину. Имеет ли смысл потратить неделю на оптимизацию и сэкономить потом на этом, или рутина связана с процессами, неподдающимися автоматизации (например из-за бюрократии).
    Ответ написан
    1 комментарий
  • Обязателен ли диплом computer science или математика, физика для получения рабочей визы в Германии, США?

    saboteur_kiev
    @saboteur_kiev Куратор тега Карьера в IT
    software engineer
    Нет. Но значительно повышает шансы на получение визы.
    Ответ написан
    Комментировать
  • Как оптимизировать данный скрипт?

    saboteur_kiev
    @saboteur_kiev Куратор тега bash
    software engineer
    А зачем?
    Тут все достаточно оптимально.
    Ну разве что заменить `` на $()
    И year и month не вычислять каждый раз, а сделать это один раз.

    #!/bin/sh
    # Пример пути до сайта /var/www/site.ru/web/
    SITEDIR="/var/www"                                  # Папка до названия доменаов
    WEB="web"                                           # Папка после названия доменов (если есть)
    LIST=${1:-$(ls -L $SITEDIR | grep -E ".*\.\w{1,5}")} # Название сайта, тут выбор или аргумент или, регулярка  можно убрать только -L ;) 
    DBCONN="bitrix/php_interface/dbconn.php"            # Откуда читать настройки mysql
    FTPUSER="*******"                                   # Логин FTP сервера
    FTPPASS="****************"                          # Пароль FTP
    FTPHOST="**************************"                # сервер FTP
    FTPDIR="/server8/site/"                             # папка на FTP
    TMPDIR="/var/backup/site"                           # Где будут храниться временные файлы
    DATE=$(date +"%Y-%m-%d")
    YEAR=$(date +%Y)
    MONTH=$(date +%m)
    
    test ! -d $TMPDIR/$YEAR/$MONTH && mkdir -p $TMPDIR/$YEAR/$MONTH # создаем  структ уру каталогов если их нет
    
    for ELEMENT in $LIST
        do
        if [ ! -f /$SITEDIR/$ELEMENT/$WEB/$DBCONN ]; 
          then
              echo " Файл $SITEDIR/$ELEMENT/$WEB/$DBCONN не найден, сайт будет без БД!"
          else        
            DBLOGIN=$(grep "^\$DBLogin =" $SITEDIR/$ELEMENT/$WEB/$DBCONN | cut -f2 -d'"')
            DBPASS=$(grep "^\$DBPassword =" $SITEDIR/$ELEMENT/$WEB/$DBCONN | cut -f2 -d'"')
            DBNAME=$(grep "^\$DBName =" $SITEDIR/$ELEMENT/$WEB/$DBCONN | cut -f2 -d'"')
            mysqldump -u$DBLOGIN -p$DBPASS $DBNAME > $SITEDIR/$ELEMENT/$WEB/$DBNAME-$DATE.sql && echo "Дамп БД $DBNAME будет сохранен в корне сайта"  ||  echo "Ошибка дампа базы данных " $DBNAME
        fi 
    
        echo "Архивируем сайт $ELEMENT" 
      tar -cvpzf $TMPDIR/$YEAR/$MONTH/$ELEMENT-$DATE.tar.gz --directory $SITEDIR/$ELEMENT/$WEB --ignore-failed-read --exclude='./bitrix/tmp' --exclude='./bitrix/updates' --exclude='./bitrix/backup/*\.gz*' --exclude='./bitrix/backup/*\.tar*' --exclude='./bitrix/cache' --exclude='./bitrix/managed_cache' --exclude='./bitrix/stack_cache' --exclude='./upload/resize_cache' --exclude='./stats' . >> /dev/nool 2> /var/log/backup_error.log
      rm -f $SITEDIR/$ELEMENT/$WEB/$DBNAME-$DATE.sql # поскльку ложим на реальный сайт, ибо нормально добавить в архив не получитяс.
      
      echo "Сохраняем $ELEMENT на FTP"
      wput  --basename=$TMPDIR --limit-rate=60000K --timestamping  --remove-source-files --tries=2 $TMPDIR/$YEAR/$MONTH/$ELEMENT-$DATE.tar.gz ftp://$FTPUSER:$FTPPASS@$FTPHOST$FTPDIR
      rm -f $TMPDIR/$YEAR/$MONTH/$ELEMENT-$DATE.tar.gz
      done
    rm -r $TMPDIR


    Если хотите оптимизировать, надо менять правила игры. Например выяснить, что на удаленный хост можно не ftp, а ssh тогда можно разные вещи делать, начиная от tar прямо на удаленный хост, или вообще подключить удаленный хост по NFS и сразу на него ложить как в папку.
    Не очень понятно, что вы имеете ввиду про "сохранить 1 задачу"
    Ответ написан
  • C# или Java для игр?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    Какой язык больше подходит для написания игры (Unity в расчет прошу не принимать)

    Больше всего подходит бейсик.

    Прошу объяснить почему.

    1. Это не юнити.
    2. Я на нем сокобан за час сделал.

    P.S. Игры бывают разные. Платформы бывают разные. Знания бывают разные. Вам нужно больше деталей. А так игры можно на чем угодно писать.
    Ответ написан
    Комментировать
  • На чем написать простое многопользовательское приложение?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Почему нельзя сделать простенькую систему на php + js + mysql, и не городить "большую систему".
    Просто потратьте деньги, наймите студию которая напишет вам приложение раз и навсегда.
    Ответ написан
    Комментировать
  • Как хранятся данные при сегментной адресации в реальном режиме?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    потому что минимальная адресуемая размерная единица ячейки памяти - 1 байт (8 бит).
    Весь компьютер так устроен.
    В 8 бит помещается число от 0 до 255, или в шестнадцатиричной системе (которая чаще используется для работы с байтами) от 00 до FF

    сегмент это обычно 64 килобайта, что адресуется двумя байтами (от 0000 до FFFF)
    Ответ написан
    Комментировать
  • Что нужно знать, чтобы заниматься анализом данных?

    saboteur_kiev
    @saboteur_kiev Куратор тега Python
    software engineer
    Надо знать предметную сферу, и да, владеть алгоритмами.
    Дальше все зависит от предметной сферы.
    Если работаешь в области физики - хорошо знать физику. Если в области финансов - финансы и так далее.
    Ответ написан
    2 комментария
  • Простой 3д редактор для планировки интерьера/квартиры, в идеале бесплатный?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Поищите на торрентах proSto - как раз для мебели и планировки создавалась.
    Ответ написан
    2 комментария
  • Как определиться с выбором языка программирования?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    А зачем вам это? Синтаксис обычно изучается за пару дней.
    Попробовать нужно не языки программирования, а технологии.
    Поставьте себе задачу не хелловорлд, а чуть посложнее, напишите ее на разных языках, посмотрите где вас больше прет.
    Или тупо ставьте себе задачу посерьезнее и пишите на разных языках разные части.
    Ответ написан
    1 комментарий
  • Какой программой можно дефрагментировать мелкие файлы в папке?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    1. Ramdisk.
    2. NTFS компрессия может помочь, если файлы хорошо жмутся.
    3. Виртуальный диск или даже криптодиск, в который вы сразу после форматирования скопируете файлы последовательно.
    4. Разобраться что за программа, может она умеет что-нибудь еще.
    Ответ написан
    Комментировать
  • Как запустить код на C из perl?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Скрипта на С не существует. С это компилируемый язык, его нужно скомпилировтаь в исполняемый файл. Либо у вас скрипт не на С.

    И дело не в перл. Перл у вас скорее всего просто запускает внешний файл.
    Windows запускает ассоциированную программу - у вас visual studio.
    Видимо нужно найти и поставить интерпретатор С
    Ответ написан
    4 комментария
  • Как сделать автоматическую сортировку входящих писем?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Именно так, чтобы просто перетаскиванием письма в папку создавалось правило сортировки - такого нет.
    А кнопочка "создать правило сортировки" есть практически в любом клиенте.
    Ответ написан
    Комментировать