Задать вопрос
  • Как защитить алгоритм в приложении?

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

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

    Тем не менее, лучше сперва тщательнее погуглить и поконсультироваться, чтобы точно определить что ваша гениальная идея, действительно такая гениальная и нужная всем.
    Ответ написан
    2 комментария
  • Куда клиенты валят с Upwork?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    "Мне нужны заказчики кто хочет срочно, быстро, завтра, качественно, дорого. Вот они куда-то поисчезали.. "
    Такие заказчики не будут доверять рандомным людям с биржи. Они уже нашли себе проверенных исполнителей, и работают с ними напрямую.
    Ответ написан
    1 комментарий
  • Стоит использовать исключения или if/else?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Это не сравниваемые вещи.

    if/else проверяет ошибку в указанном месте.

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

    То есть, если вы где-то забыли проставить if/else, результат будет внезапное завершение программы.
    exception можно поставить на самом высоком уровне, и добиться, что будет закрыто какое-то конкретное окно, не будет выполнена какая-то конкретная операция, но приложение останется работать и выполнять другие функции.

    Зависит от того, что вы делаете. Если игрушку на 2 кнопки - то можно и без exceptionов, если же многопользовательское приложение, где из-за непредусмотренного действия одного юзера, упадет все приложение для всех пользователей - if/else будет явно недостаточно.
    Ответ написан
    Комментировать
  • Есть ли среди вас те, у кого есть постоянный стабильный доход не от разработки, а от своего продукта?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    Вложитесь в недвижимость и сдавайте ее в аренду.
    Ответ написан
    31 комментарий
  • Жёсткий диск 4Tb Western Digital SE (WD4000F9YZ). Уровень шума 34 дб в режиме работы и 31 в простое. Это громко для домашнего ПК?

    saboteur_kiev
    @saboteur_kiev Куратор тега Железо
    software engineer
    "Просто хочу хороший жёсткий диск, чтобы не потерять 4 TB инфы. Да там будет много игр и кино, но так же исходники большого кол-ва программ, примеров и т.д., фотки и многое другое. Это потерять я не хочу. "

    То, что должно загружаться и быстро работать - скиньте на SSD, а второй винт должен быть тихоходным. Кроме того, диск 7200 больше греется, больше вибрирует, как результат - раньше выйдет из строя, чем тихоходный. А разница в скорости заметна только на случайном доступе - линейная скорость чтения/записи отличается не сильно.

    Но чтобы ничего не потерять - ОБЯЗАТЕЛЬНО бэкапы.
    Ответ написан
    Комментировать
  • Как зашифровать и расшифровать строку с помощью ключевой пары ssh?

    saboteur_kiev
    @saboteur_kiev Куратор тега SSH
    software engineer
    Создаете ключ в PEM формате (либо конвертируете текущий публичный ключ в PEM формат)
    ssh-keygen -f id_rsa.pub -e -m PKCS8 > id_rsa.pub.pem


    Отправляем публичный ключ товарищу, который шифрует им файл message.txt:
    openssl rsautl -encrypt -pubin -inkey id_rsa.pub.pem -ssl -in message.txt -out EncryptedMessage.txt


    Присылает EncryptedMessage.txt вам, и вы расшифровываете его приватным ключом:
    openssl rsautl -decrypt -inkey id_rsa -in EncryptedMessage.txt -out DecryptedMessage.txt
    Ответ написан
    3 комментария
  • Как рандомно перемешать все строки в очень большом файле?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Создайте shuffle.bat из кода ниже.
    Затем :
    type ваш_файл | shuffle.bat > result.txt

    @ECHO OFF
    SETLOCAL ENABLEDELAYEDEXPANSION
    SET TmpFile=tmp%RANDOM%%RANDOM%.tmp
    TYPE NUL >%Tmpfile%
    FOR /F "tokens=*" %%i IN ('MORE') DO SET Key=!RANDOM!!RANDOM!!RANDOM!000000000000& ECHO !Key:~0,15!%%i>> %TmpFile%
    FOR /F "tokens=*" %%i IN ('TYPE %TmpFile% ^| SORT') DO SET Line=%%i&ECHO.!Line:~15!
    ::DEL %TmpFile%
    ENDLOCAL
    Ответ написан
    Комментировать
  • Как работает очередь crontab?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    каждую минуту (в какую-то секунду,не обязательно в 00 секунд), начинает выполняться скрипт, который выглядит как

    curl site.ru/index.php?do=parser;
    /bin/sleep 6;
    curl site.ru/index.php?do=parser;
    /bin/sleep 6;
    ... (всего 10 раз)

    Команды выполняются последовательно, следовательно выполняется первый curl, затем sleep на 6 секунд, затем выполняется следующий curl.
    Curl выполняется не мгновенно, поэтому между двумя курлами будет 6 секунд + время выполнения предыдущего curl.

    Судя по всему человек, который это писал, понятия не имеет о циклах и запуске процессов в фоне, команду можно сократить до

    for var in {1..10}; do sleep 6; curl site.ru/index.php?do=parser;done
    Ответ написан
    Комментировать
  • Как добавить новую подсеть?

    saboteur_kiev
    @saboteur_kiev Куратор тега Системное администрирование
    software engineer
    "Да компьютеры должны видеть друг друга в сети. Я хочу на доп подсеть вынести все периферийные устройства, а на основной будут юзеры."

    А зачем?
    У вас юзеров и периферийных устройств больше 200?
    Вместо создания двух подсетей и гемора с их маршрутизацией, может проще разогнать их по разным IP диапазонам?
    Например распределить
    192.168.1.1 - 192.168.1.50 будет под сервера, устройства и маршрутизаторы
    192.168.1.51 - 192.168.1.254 будет для юзеров
    Ответ написан
    2 комментария
  • Где найти программиста на мелкие задачи?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Если взять 10 или 20 мелких задач, огромное количество времени уходит на знакомство с заказчиком, с проектом, с задачей, со сдачей проекта.

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

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Компьютерные сети
    software engineer
    "В обоих компьютерах не используется прокси"
    Так установите на компе с полноценным инетом любой прокси
    А ограниченный комп настройте на использование этого прокси.

    Любой нагугленный прокси подойдет - ccproxy, wingate, главное чтобы был бесплатен и скачивался с его родного сайта, а не файлопомойки
    Ответ написан
    Комментировать
  • Является ли создание free-to-play игры с существующими персонажами нарушением авторского права?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Диснеевские персонажи все защищены торговой маркой. Но не каждый создатель аниме этим озаботился.
    Уточняйте по каждому персонажу отдельно, у авторов (точнее издателей, ибо права на персонажей могут выкупать).
    Ответ написан
    6 комментариев
  • Где взять макеты psd, сверстав которые можно показать в портфолио?

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

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Организация работы
    software engineer
    Ваш мозг вас обманывает.

    На всякое действие должно быть вознаграждение. Если его нет, вы не будете это делать. На работе основное вознаграждение - зарплата.

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

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

    А вообще все дело в самодисциплине.
    Цивилизация в ее текущем виде не соответствует тому, как работает природа - слишком транжирно мы живем по всем статьям. Поэтому нужна сила воли, чтобы осознанно заставлять себя делать вещи, удобные для того, чтобы комфортно жить в этой цивилизации. Мозг сам по себе не сможет понять что нужно делать, он будет вам жужжать, надоедать, рекомендовать плюнуть на все, хлебнуть пивка и ничего не делать.
    Ответ написан
    Комментировать
  • Какой минимум знаний необходим и желателен на данный момент для Junior Android Developer для работы и фриланса?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    "И бонусный вопрос: сколько времени в среднем потребуется для самостоятельного изучения этого минимума адекватному человеку? "

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

    Адекватность и скорость усвоения материала не связаны - скорость усвоения больше связана с уже имеющимся бэкграундом, не обязательно в программировании, общая эрудиция очень помогает осваивать новые понятия, если есть абстрактные и уже известные примеры.
    Ответ написан
    4 комментария
  • Почему в моем случае процессы mysql занимают много оперативки в простое?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Посмотреть настройки Mysql сервера, оцпии *size=, например myisam_sort_buffer_size

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

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Если у вас есть офис, то все что вы сказали, можно сделать в Word-е.
    Ответ написан
  • Почему в CentOS вместо пользователя показывает знак вопроса?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Скорее всего у вас нет прав на выполнение в install директорию.
    Флаг "eXecute" для каталога, означает что вы можете в него войти.
    Флаг "Read" - что прочитать список, но этого может быть недостаточно.
    Ответ написан
    Комментировать
  • Как решить /etc/sudoers is owned by uid 1000, should be 0?

    saboteur_kiev
    @saboteur_kiev Куратор тега Ubuntu
    software engineer
    загрузитесь в single mode
    или подключите диск к другому серверу
    и потом просто chown
    Ответ написан
    Комментировать
  • Под каким ip адресом я выхожу в интернет?

    saboteur_kiev
    @saboteur_kiev Куратор тега Компьютерные сети
    software engineer
    Адрес может быть
    1) динамический или статика
    2) серый или белый

    Две эти вещи независимы друг от друга.

    Чтобы понять белый у вас адрес или нет, смотрите адрес на myip.ru и сверяете его с тем, что у вас на сетевой карточке (если вы подключены через роутер - то что у вас на роутере).

    Чтобы понять статический у вас или динамический, тут сложнее. Обычно динамический адрес резервируется на некоторое время, которое может быть как час, так и сутки. Но если комп не перегружается, или у провайдера достаточно адресов, адрес может продлеваться и не меняться месяцами.

    В вашем случае проще будет определить белый/серый, а насчет статики позвонить в саппорт провайдера и спросить.
    Ответ написан
    Комментировать