Задать вопрос
  • Колледж или университет?

    saboteur_kiev
    @saboteur_kiev Куратор тега IT-образование
    software engineer
    Я бы посоветовал пойти в универ

    1. Насколько сильная финансовая нагрузка? Насколько они потянут,например, один учебный год, после которого за лето если что можно перевестись в другое заведение? Что говорят сами родители по этому поводу?
    2. Учась в универе у тебя будет больше мотивации не "прослушать курс лекций", а понять материал, чтобы не подвести родителей.
    3. Учась в универе, больше шанса что твои социальные связи пополнятся более полезными знакомствами
    4. В универе обучение по любому буде лучше в том числе и из-за преподавателей и материалов/обеспечения/подхода к обучению.

    Ну а так, ты сам сказал что именно ИТ направления нужно изучать самостоятельно. Попробуй к концу первого года порешать те же задачки на литкоде, попробовать выполнить какие-то задачи на фрилансе (не обязательно даже брать их как исполнитель, просто для себя попробовать выполнить реальные вещи)
    Ответ написан
    2 комментария
  • Как узнать время работы скрипта?

    saboteur_kiev
    @saboteur_kiev Куратор тега Python
    software engineer
    time script.py
    Ответ написан
    Комментировать
  • У какого языка html позаимствовал свой синтаксис?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Оба и html и xml взяли свое начало из SGML
    А ваши варианты ответа видимо писал двоечник.
    Ответ написан
    Комментировать
  • Product manager с нуля, насколько реально?

    saboteur_kiev
    @saboteur_kiev Куратор тега Карьера в IT
    software engineer
    Джун продукт менеджер? нет такой специальности.
    Ты либо ведешь продукт, либо не ведешь. Даже помощник продукт менеджера должен быть в теме.

    Разработка весьма сильно отличается от любого другого материального продукта.
    А так как задача продукт менеджера в том числе и понимать куда мы движемся, то не разбираясь разработке, не умея даже примерно оценить затраты на реализацию разных фич (а то, что какие-то тимлиды или архитекторы вам подскажут - это неправда. Они будут топить за технологии, а не за хотелки бизнеса), вы просто развалите продукт.

    Конечно менеджмент сильно зависит от человека, и какой у тебя бэкграунд мы не знаем. Найди знакомых, которые в этом направлении работают, пообщайся тесно, выясни мнение айтишника со стороны не рандома с инета, а того, кто тебя знает и с тобой работал.
    Ответ написан
    3 комментария
  • Как собрать сервер на устаревшем ПО?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    ОС FreeBSD 7.2
    Lighttpd 1.4.25
    PHP 4.4.9
    MySQL 4.1.25

    Уверен, что все это также легко поднимется на Линуксе. Возможно придется поставить не самую свежую версию, а попробовать ставить свежий, пробовать ставить эти версии, если не прокатило, ставить более старую версию И так пока не заведется.
    Линукс заводить и поддерживать в виртуалке будет проще, чем FreeBSD.

    А вообще, если есть навыки программирования хотя бы минимальные, скопировать весь сайт и попробовать переписать под новые версии php, гугля ошибки и их решение. Очень много разных продуктов в мире приходилось апгрейдить. Можно вообще не знать php и с гугл-девелоп или stackoverfow-девелопментом можно все завести и на современных версиях.
    Ответ написан
    1 комментарий
  • Какие курсы по full stack на javascript посоветуете на Украине?

    saboteur_kiev
    @saboteur_kiev Куратор тега IT-образование
    software engineer
    Не надо лезть в фуллстек, пока ты не дошел ХОТЯ БЫ до уровня джуниора ХОТЯ бы где-то.
    Любые курсы будет погрызть по кусочкам всего, и не научиться ничему до уровня самостоятельности.
    Изучи что-то одно. Потом подумай надо ли тебе еще и другое, или углубиться в то, что изучил.

    Фуллстек разработчик это не тот, кто учит и фронт и бэк и базы данных. Это в первую очередь человек, который может в одиночку выполнить целый заказ. То есть это уже не джуниор по определению.

    Поэтому и сейчас, пока ты еще даже не начал изучать, не нужно уже кидаться в крайности и выбирать специализацию.
    Ответ написан
    Комментировать
  • Является ли порочной практика итеративных попыток сдачи тестировщикам сырых результатов работы?

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


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

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

    saboteur_kiev
    @saboteur_kiev
    software engineer
    В вашем случае - полным перебором.
    Ответ написан
    6 комментариев
  • Существуют ли USB-киллеры?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Да даже банальный старый USB кабель может где-то перетереться, закоротить проводки питания с информационными, и при неудачном подключении сжечь порт.
    Ответ написан
    Комментировать
  • Как разделить xml файл спомощью bat/cmd?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Если под рукой есть баш, или стоит git-bash в системе, то можно следующим скриптом для баш.

    NL="
    "
    while read; do
      if [ "$REPLY" == "<post>" ]; then
        BLOCK='<?xml version="1.0" encoding="UTF-8"?>'
      elif [[ "${REPLY}" =~ OrderReference ]]; then
        order="${REPLY#*Reference>}"
        order="${order%</Order*}"
      fi
      BLOCK="${BLOCK}${NL}${REPLY}"
    
      if [ "$REPLY" == "</post>" ]; then
        echo "$BLOCK">$order.xml
        echo "Writing block to $order"
      fi
    done<"${1}"


    вызываем
    bash myscript MYFILE.xml
    получаем файлы.
    Ответ написан
    Комментировать
  • Как удалить точку после домена?

    saboteur_kiev
    @saboteur_kiev Куратор тега bash
    software engineer
    dig google.com +noall +answer|awk '{print $5" "substr($1,1,length($1)-1)}'
    Ответ написан
    Комментировать
  • Как функционируют читы в онлайн играх (Multiplayer)?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    Они каким-то образом вызывают на стороне клиента функционал который есть в игре (native code C++), или вызывают функционал предоставленный конкретным мультиплеером для клиентской стороны (client-side), тогда, как они это все синхронизируют?


    Все читы используют один из двух вариантов.

    1. Вмешательство в общение между клиентом и сервером, для чего нужно знать что может слать сервер клиенту и клиент серверу, и выяснять какие вещи сервер проверяет, а какие нет.

    2. Вмешательство в работу клиента, вызов его определенных функций (или подмена их на свои) при помощи вмешательства в процесс или dll-injection, что например делает autoaim.

    В обоих случаях помогает хорошее знание работы игрового сервера, чтобы понимать какие рассчеты идут на стороне клиента, а какие на стороне сервера.

    Например представим простую мобильную игру, кубик рубик.
    Сервер присылает вам запутанный кубик, который вам нужно собрать его за x ходов.

    Что нужно определить:

    Что отправляет клиент - каждый ход отдельно, или итог в конце.

    Если каждый ход отдельно, то уже возникает проблема, что скорее всего и количество ходов и их корректность сервер будет проверять, и возможно тут взломать ничего нельзя (ну разве что встроить автоматический алгоритм решения в клиент,который будет подсказывать что жать)

    Если клиент отправляет результат уже в конце, то проверить - он отправляет всю последовательность ходов или просто пакет типа "уровень пройден, потрачено xx ходов". В этом случае вообще не проблема подделать такой пакет, и сразу его отправлять, проходя уровни мгновенно, не решая задачу в принципе. Или например взломам количество доступных ходов, чтобы можно было поиграться без лимита, а при отправке возможно в пакете нужно будет отправлять "легальное" количество ходов. А есть еще вероятность что на стороне сервера никто не проверяет валидность. А может быть и наоборот, что вся последовательность ходов и их количество хешируется, корректность хеша проверяется на стороне сервера.
    И так далее.

    Выдача визуальной подсказки куда двигаться - это вмешательство в клиент, никак не затрагивая работу сервера. Грубо говоря autoaim, который отследить программно проблематично, особенно если его правильно сделать.
    А подделка пакета - это вмешательство в протокол обмена.

    Во всех случаях нужно уметь программировать и реверс-инженерить, а также долго разбираться как работает сервер и клиент. И если у вас нет доступа к исходному коду сервера и клиента, задача в разы усложняется.
    Ответ написан
  • Какие книги есть для новичков в ПК, вроде Фигурнова?

    saboteur_kiev
    @saboteur_kiev Куратор тега Книги
    software engineer
    Википедия, статьи на Хабре, сайты вроде тостера и stackoverflow
    Ответ написан
    3 комментария
  • Возврат денег за ноутбук?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Деньги тебе вернут не согласно текущей цене, а согласно твоему чеку, если он у тебя еще есть. Так что возвращать можно только если ноут тебе не подошел. И раз он уже подорожал, то купить его второй раз денег уже может не хватить.
    Ответ написан
    6 комментариев
  • Как устроиться django-developer без опыта коммерческой разработки?

    saboteur_kiev
    @saboteur_kiev Куратор тега Карьера в IT
    software engineer
    В интернете много читал, что стоит попробовать писать всем подряд на вакансии, где не только юез опыта юерут и предлагать свою раюоту за бесплатно.

    Или ты умеешь работать и ты работаешь за деньги.
    Или ты не умеешь, и предлагаешь себя бесплатно, но такие никому не нужны.
    Ты уж определись.

    Из стоящих работ к сожалению могу предоставить код своей незавершённой социальной сети.

    Не всегда важен размер работы. Важна завершенность. Можно и маленькие вещи сделать. А если у вас за все ваше время был всего-лишь один недоделанный проект, который нельзя показать, еще и непонятно что делали вы, а что друг...

    Зачем docker+redis для неработающего проекта?
    Что docker+redis это какие-то совместимые технологии? Нет.

    Что этим вы хотели сказать? Что вы хорошо знакомы с докером? не уверен.
    Особенно, учитывая что вместо того, чтобы просто хранить докерфайлы и инструкцию по запуску, у вас прямо в гит-репо лежат бинарники питона и джанго
    Вдобавок вообще нет ну никакого описания ни что это ни зачем это ни как это использовать. Такой код показывать нет смысла.
    Зайтите на гитхабе в десяток совершенно рандомных репозиториев и постарайтесь за 3-5 минут понять что это за проект и зачем он. Если не выходит - то работодатель тем более не будет лазить по исходникам и пытатся искать конкретные коммиты. В идеале проект нужно показывать в рабочем состоянии, чтобы можно было зайти, покликать мышкой, а потом уже заинтересоваться как реализована конкретная штука в исходниках, но не наоборот

    Наверное тоже будет полезной информацией, что проект писался при помощи ОС linux ubuntu (на данный момент из-за проблем с подключением удалил его как вторую ОС при необходимости я оперативно верну linux назад)

    Какой процент помощи вам оказала убунта? вы непосредственно в ней писали, или просто запускали докер?

    В общем, у вас длинная простыня текста, из которой непонятно совершенно все. Просто перечисление различных технологий, из которого совершенно неясно, насколько вы с этой технологией знакомы.

    А самое важное для работодателя - это понимать уровень экспертизы и адекватности человека.
    Ответ написан
    Комментировать
  • Как сохранить права в файл?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Да просто список сделай. Потом по нему скриптом можно восстановить.

    find . -exec stat --format '%a %n' {} \;
    
    find . -exec stat --format '%a %n' {} \; > list_of_files.txt
    Ответ написан
    Комментировать
  • Права 777 как скачать файлы?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    http не поддерживает скачивание папок.
    Поэтому простой ответ - никак. Более сложный

    Вариант 1
    Пройтись по всем папкам, получить список всех файлов и скачивать каждый отдельно.

    Вариант 2
    На стороне сервера создать архив со всеми файлами и папками и скачать его

    Вариант 3
    Настроить не web сервер, а что-то другое, ftp/ssh/nfs/samba и воспользоваться клиентом, который умеет работать со структурой директорий (filezilla, rsync, FAR с ftp/ssh плагинами, проводник)
    Ответ написан
    Комментировать
  • Стоит ли брать клавиатуру ноутбука для другой страны?

    saboteur_kiev
    @saboteur_kiev Куратор тега Железо
    software engineer
    Проще купить 2-3 набора наклеек и пока они стираются, прокачать слепую печать.
    У меня на клавиатуре уже давно половины клавиш просто белые, вытертые.
    Ответ написан
    Комментировать
  • Как работают алгоритмы выбора лидера в распределенных системах?

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

    Если текущий лидер отваливается, почему вы думаете, что все остальные узлы узнают об этом по очереди?
    Узнают одновременно. И одновременно пошлют всем узлам, что они новые лидеры, и получится бардак.
    Именно поэтому и проводится выбор - либо генерируется случайное число каждым узлом, и выбирается среди всех тот, у кого число самое большое. Либо есть заранее заданные приоритеты выбора лидеров, основанные или на конфигах, или на мощностях, как уж создателю программы показалось нужным.
    Опять же, в алгоритм можно добавить настройки, чтобы администратор мог указать какие машины не должны участвовать в выборе.
    Ответ написан
    2 комментария
  • Jagged Alliance Back in Action. Можно ли самому редактировать карту?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    А значит, теоретически, можно подобрать инструмент для работы с ним.


    Подобрать инструмент ;) ну так блокнот подойдет.
    Если производитель не выпускал в паблик редактор карт, то своими силами без документации его можно только разбирать и писать, поэтому копать нужно в сторону реверс инженеринга.
    Можно поискать сообщества, которые этим уже занимались. Но насколько глубоко они копнули, и осилили ли написать более-менее рабочий инструмент - неизвестно.
    Ответ написан
    Комментировать