• Какой дистрибутив выбрать?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Ах да, линукс же может в web программирование?

    Нет. Не может. Не слушайте никого. Бессовестно брешут. ;)
    Ответ написан
  • Таск менеджер с широким набором функционала(Календарное планирование, финансы, учет вреемни)?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Таких нету ((( Все обрыскал, но не нашел. Вот Вам и идея для бизнеса ;)
    Ответ написан
    Комментировать
  • Как развиваться в программировании, если мотивируют только деньги?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Могу посоветовать, как я выбрался из состояния "перегорел".
    1. Начал делать зарядку и отжиматься по утрам. Даже если заболел и нет сил, на 1 раз все равно хватает. Ошибка многих в том, что они пытаются сразу много, а потом их это страшит и они откладывают. А если мозг понимает: 1 раз не много, то им проще выполнить.
    Начните отжиматься, с 1 раза и каждую неделю увеличивайте на 1.
    2. Меняйте пути прихода домой. Если всегда ходите дворами, сегодня пойдите по главной.
    Глаз не должен замуссоливаться.

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

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Пишу RUSTful API на php, застрял на аутентификации с помощью сессий

    Вы уверены что Вы понимаете что такое REST? Вы пишите что угодно, но не REST! Одно из требований к REST это stateless. Другими словами в Ваших запросах УЖЕ есть все необходимое для выполнения операции и тоже самое будет в ответе "либо приходи позже" либо "держи результат запроса на операцию". В REST нет такого термина, как сессия. Если у Вас это получилось, то вы написали не REST
    Ответ написан
  • Почему не удается установить библиотеку - command 'cl.exe' failed?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Запрос в гугл #1: "what is cl.exe" дает на первой строчке "cl.exe is a tool that controls the Microsoft C and C++ compilers ".
    Запрос в гугл #2: "where i can get cl.exe" дает на первой же странички ссылку на тему на каком-то из форумов "Подскажите, пожалуйста, где можно скачать компилятор " и в этой же теме ссылка куда надо ткнуть чтобы поставить этот компилятор.

    Цена: 10 мин. гугления + время на установку.

    UPD:
    После установки компилятора нужно из cmd.exe запустить cl.exe. В ответ тулза cl.exe должна что-нибудь выдать на консоль. Если же будет, что cl.exe не распознан, тогда нужно будет подшаманить так, чтобы в переменную PATH был прописан путь до набора утиллит компилятора
    Ответ написан
    5 комментариев
  • Стоит ли использовать mock/stub внешнего api в интеграционных тестах?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Берется тест. Явно выражается его цель. Потом смотрится какие-компоненты критичны для достижения цели, а какие нет. От этого знания можно понять что можно изолировать, а что в любом случае должно принимать участие
    Ответ написан
    Комментировать
  • Как откатить Windows 10?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Именно поэтой причине я очень люблю VirtualBox и VmWare Workstation. Вот зачем сразу накатывать, когда можно поиграться чуток? Куда спешить-то?
    Ответ написан
    Комментировать
  • Где и как лучше рисовать дизайн?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Попробуйте триалку Balsamic Mockups
    Ответ написан
    Комментировать
  • Google Test Framework: Как частично отключить параметризованный тест?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Может Вам поможет это: GoogleTest: How to skip a test? ?
    Ответ написан
    Комментировать
  • Python. Можно ли присвоить имя программы непосредственно в самой программе?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    В Python все есть Объект! Этот объект привязывается к имени. Присвоейте новую строку этому имени и на этом Все!

    Python имеет традицию из Unix-мира гласящую "Если юзер решил отстрелить себе ногу, значит так надо!". Другими словами если Вы решили поменять __file__ у модуля, то Python-интерпретатор ничего Вам за это не сделает!

    import sys

    print(__file__)
    __file__ = 'asbasdfasdf'
    print(__file__)

    print(sys.argv[0])
    sys.argv[0] = 'dsfsdfasf'
    print(sys.argv[0])
    Ответ написан
    Комментировать
  • Что происходит за кулисами цикла for?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    На хабре есть отличнейший мануал "Code Like a Pythonista: Idiomatic Python". Перевод. Прочтите. Там есть ответы на многие Ваши вопросы, в том числе и на этот.

    Вот цитата из этого мануала:
    Объясню, как в действительности работает цикл for. Python смотрит на последовательность, указанную после ключевого слова in. Если это простой контейнер (как список, кортеж, словарь, множество или определенный пользователем), Python преобразует его в итератор. Если этот объект уже является итератором, Python использует непосредственно его.
    Затем Python многократно вызывает метод итератора next, связывает возвращаемое значение со счетчиком цикла (i в этом случае), и выполняет код тела цикла. Этот процесс повторяется снова и снова, пока не будет вызвано исключение StopIteration или выполнена инструкция break в теле цикла.
    Цикл for может включать условие else (иначе), код которого будет выполнен после выхода из цикла, но не после выполнения инструкции break. Эта особенность предоставляет очень изящные решения. Условие else не всегда и не часто используется с циклом for, но может нам пригодиться. Иногда else удачно выражает логику, которая вам нужна.


    UPD:
    Наткнулся на хорошую статью: Understanding Python's "for" statement
    Ответ написан
    4 комментария
  • Сменили дизайн landig page, пропали заказы. В чём может быть причина?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Jazzcool: Если что-то уже работало, то это "что-то" надо применять и с небольшими, мелкими шажочками двигаться в сторону "на мой взгляд современный". Вы же не apple, чтобы быть настолько уверенными в себе
    Ответ написан
    Комментировать
  • Когда следует приступать к практике?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Абсолютно любая информация должна быть пройдена через пальцы. Даже элементарное 2+2 должно быть не мало раз набита руками! Чем больше практики тем лучше. А еще лучше с вопросами "А что если я тут вот ... так?" или "А если бы написал так ....?"
    Ответ написан
    Комментировать
  • Как в питон добавить стороннюю библиотеку?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Согласно документу easy_install / pip лучше Вам поступить общепринятым способом описаном по этой ссылке. Оно само должно скачать, а вы пока идите чай пить
    Ответ написан
    Комментировать
  • С чего начать изучать программирование законченному гуманитарию?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Гумманитарию?
    0. Самым главным навыком ЛЮБОГО программиста это "Уметь читать по-английски". Даже использование гугла не так важно, как чтение на Шекспир-Language.
    1. Прочесть самой первой первой книгу, но не про программирование, а про компьютеры. Лучше Эндрю Таненбаума об этом никто не напишет. Читай, читай, читай и пока не вкуришь лучше за программирование не садиться. У любого программиста зашит в коже ответ на вопрос "Какие задачи можно решить с помощью компьютера, а какие невозможно?". Чтобы этот ответ был понятен нужно знать о том как работает вычислительная система в принципе, хотя бы на "сумбурно"
    2. Затем берите книгу по Python. Язык достаточно дружелюбен к новичкам и быстрый старт обеспечен. Решайте свои задачи, не заботясь о качестве. Просто решайте!
    3. После получения конкретного опыта решения задач. Читайте Стива МакКонела про его Совершенный код.
    4. Снова решайте задачи, но уже пытайтесь не только свои, но и вливаться в проекты с открытым исходным кодом
    5. Далее про модульное тестирование, рефакторинг и др.
    6. Только после того как в принципе будет понятно, что такое разработка нужно углубляться в дебри. В дебри под названием : алгоритмы и структуры данных. Изучать про сложности.

    P.S.:
    Не слушайте "умников" про алгоритмы сразу. Почему? Потому что пока у Вас не загорятся глаза "Да, черт побери! Это точно мое" не имеет смысла зарываться. Только когда прет и горят глаза, только в таком состоянии можно одолеть груду сложных и запутанных кодов.

    #define true false // счастливой ночи брат
    Ответ написан
    6 комментариев
  • Как реализовать API для своего сайта?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Ну я бы сделал так:
    1. Написал API
    2. Переписал сайт так чтобы он использовал API и мой сайт стал бы первым и основным клиентом.

    В противном случае придется разбрасывать усилия и на сайт и на API
    Ответ написан
    Комментировать
  • Где найти сообщество по интересам?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Frosty 87: А Вы не пробовали приобщить хоть кого-то из своего окружения к чему-то к чему хотели бы приобщить? Можно же научить, рассказать, попробовать вместе запилить! То что кто-то не программист это не плохо, может он хороший организатор и тогда "привет стартап". Может кто-то хочет научиться программированию, но не понимает с какого краю подступиться?

    Но прежде всего нужно спросить себя : "Какое именно сообщество я ищу? Для чего? Чего конкретно мне не хватает?"

    Есть такая поговорка : "Меняйся сам, изменится мир".
    Ответ написан
    Комментировать
  • Как реализовать проверку целостности программы?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Если бы все было так просто, то не было бы столько предолжений защит ПО типа Enigma, Themida и др. Если хотите окунуться с головой в эту область, то рекомендую проследовать на форум Wasm.ru и читать до просветления.

    В целом решение "на коленке":
    1. Подсчитать от куска кода хэш во время накладывания защиты и считать это эталонным хэшем. Подсчитывать в момент выполнения и сравнивать с эталонной.
    2. Во время выполнения получать контекст, брать значения отладочных регистров и xor-ить с кодом. Если кто-то поставил бряк, то значит в отладочном регистре будет значение указателя, тем самым не нулевое значений, то попортит код.
    3. Поиск окон с названием от regmon, ollydbg и др.
    4. Все значимые строковые константы шифровать на этапе защиты и во время работы расшифровывать
    5. Занулять описатели секций, т.е. массив из структур IMAGE_SECTION_HEADER находящийся в PE-заголовке
    6. В заголовке найти DataDirectory[DEBUG_DIR_INDEX] и поставить на область в вашем приложение, в этой области сгенерировать мусор

    Но повторюсь, это "на коленке"
    Ответ написан
    5 комментариев
  • Как сделать бесконечную подгружающуюся ленту как в приложениях вконтакте, фейсбука, инстаграм?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Это не совсем к Android , а к средству работающему с БД. То что Вы хотите называется pagination. Как вывод, Вам надо написать в google запрос с указанием вашей БД, технологии и этого слова ;)
    Ответ написан
    Комментировать