Задать вопрос
  • Зачем vk использует переадресацию при входе в систему?

    riky
    @riky
    Laravel
    скорее всего еще одна ступень безопасности. там они ставят куки чисто на login.vk поддомен на год + HttpOnly.
    на основном домене куки ставятся на все подомены (и без HttpOnly), что менее безопасно в случае xss.

    то есть на этом поддомене хранятся надежные куки, которые через xss не украсть. да и куки эти не летают со всеми запросами, и сложнее будет угнать чужую сессию.
    Ответ написан
    Комментировать
  • Какую выбрать среду для написания кода на С++?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    > Громоздкая фиговина
    Небось Community или вовсе какой-нибудь пиратский Professional? Или еще круче - Ultimate? И какого чорта вы это поставили?
    Visual C++ Express 2008 и 2010 совсем не громоздки. Между тем, их вполне хватает, и под винду это уж всяко лучше, чем решения на базе MinGW, будь он хоть новейшей версии, которую только вчера сбилдили.

    > папки, подпапки, все эти замуты с проектами, решениями
    При разработке более-менее крупных проектов, где есть хоть какая-то архитектура и абстракция, все это нужно.
    Как минимум нужны проджекты/решения, именно проджект объединяет несколько файлов исходного кода, если среди них хотя бы 2 файла .cpp, оба из которых нужно отправлять на компиляцию.
    Есть, конечно, другие варианты, например, Makefile, но все равно они по сути сводятся к тем же проджектам, при этом они гораздо менее удобны, это для линуксоидов с их спецификой.

    Хотя да, иногда хотелось бы именно просто создать файл и все, жаль, что MS излишне категоричны и VS не предоставляет такого варианта (такая категоричность аж попахивает линуксятиной - линуксоиды тоже категоричны по-своему)
    Но вот у меня создание проекта с 1 файлом и его сохранение занимает лишнего времени всего секунд 30-60, не более. Неужели это так важно?
    Ничего сильно сложного нет:
    1. Файл -> Создать проект
    2. Нужно выбрать шаблон "Пустой проект"
    3. Проект -> Добавить новый элемент
    4. Выбираем "Файл исходного кода (.cpp)" и не задумываясь вбиваем имя main.cpp
    5. Все, в открывшемся окне можно писать код, затем все сохранить, и запустить отладку (при этом в папке Debug появится exe)
    Можно и еще проще, если пользоваться готовыми шаблонами, например, "Консольное приложение win32", хотя я так не делаю.

    А теперь - главное: о том, почему собсна под виндой следует использовать именно компилятор Visual C++:
    https://otvet.mail.ru/answer/1787375746
    Этот компилятор идет с Visual Studio, но может использоваться и отдельно, в т.ч. из командной строки. Надо заметить, сам по себе компилятор не требует заморочек с проектами и т.д.
    Может его можно и к другим IDE прикрутить. Но это все лишь теоретически, а на практике обычно просто юзают VS и все.
    Ответ написан
    6 комментариев
  • Какую выбрать среду для написания кода на С++?

    Nipheris
    @Nipheris Куратор тега C++
    > почему там все так заморочено?
    Вы бы говорили с точностью до наоборот, имея проект с около 10к файлов исходного кода, а в солюшене 70 проектов. Вы бы говорили "Спасибо, VS, хоть как-то помогла разобрать это все". Это проф. инструмент, к сожалению он не позиционирован для обучения. Это факт.

    Для обучения берите удобный редактор (Sublime?) и вызывайте компилятор руками (из ком. строки). Много чего поймете полезного (придется, иначе не получится ничего). Как include-директории передавать и всякое такое. Как задолбаетесь это делать - напишите sh-ник/bat-ник. А вот только потом вы и поймете, зачем вам Студия, и что она может/не может облегчить.
    Ответ написан
    9 комментариев
  • 3 else или 2 if?

    kompi
    @kompi
    nullstack devoops
    Чтобы избежать мучений: завернуть, например, получение группы в функцию или метод, а потом более лаконично перебрать через switch:
    function getUserGroup() {
    //..
    }
    switch(getUserGroup()) {
      case 'admin': 
        break;
      case 'user': 
        break;
      case 'guest':
      default: 
        break;
    }
    Ответ написан
    Комментировать
  • 3 else или 2 if?

    miraage
    @miraage
    Старый прогер
    Можно еще вынести получение группы юзера.
    switch (true):
        case ($_SESSION['user_group'] ?? null) === 1:
            // admin
            break;
        case ($_SESSION['user_group'] ?? null) === 5:
            // user
            break;
        default:
            // guest
            break;
    endswitch;
    Ответ написан
    Комментировать
  • Объясните человеческим языком, что такое веб-фреймворк на языке php?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Смогу ли я на фреймворке писать свои модули для моей CMS

    Если ваша CMS написана на фреймворке - да. Вполне возможна и частичная интеграция, но это путь боли.

    Наверняка не в одном фреймворке нет функции анализа собственного контента по принципу поисковых роботов.

    Фреймворк - это каркас для построения приложений. Он не решает бизнес задачи, вместо этого - технические.

    Не помешает ли мне фреймворк создавать такие модули из-за своего ограниченного функционала.

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

    Смогу ли я совершенствовать любой модуль фреймворка (например добавление комментариев) под свои нужны не мешая его обновлению.

    Да, форкаете фреймворк, публикуете форк в композере и пишите там все что хотите. При обновлении фреймворка - вливаете изменения в свой форк.

    Или придется ли мне все переписывать с выходом новой версии, как это приходится делать на CMS типа DLE.

    Если у вас зависимость в композере только с последней версией фреймворка - сами себе злобный буратино)). Указывайте фиксированную и обновляйтесь по собственному желанию, либо вовсе не обновляйтесь.

    На сколько я буду зависеть от выхода новых версий?

    Зависимость от новых версий фреймворка - полностью на вас. Как напишите так и будете зависеть))

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

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

    Можно ли будет постепенно, не нарушая работу сайта, перенести собственные CMS на фреймворк учитывая то, что в них десятки модулей, собственные админ панели и т.д.

    Да

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

    Можете, форкаете фреймворк и публикуете его в composer. Правда подобная ситуация возможна для фреймворков крайне редко и скорее сигнализирует о том, что вы выбрали хреновый фреймворк.
    Ответ написан
    Комментировать
  • Что выбрать новичку Yii 1 или 2?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    Короче, план такой:

    1. Начинаете с Yii 1.
    Как отметили выше, по нему, пожалуй, побольше гайдов для новичка.
    Как отметили вы сами, он до сих пор используется в некоторых фирмах. Больше знаешь - больше
    Как отмечу я, изучение ретро-инструментов вкупе с современными - не только интересно для любого настоящего программиста, но и реально полезно, т.к. позволяет на опыте разработчиков инструмента делать выводы для себя, учиться на его ошибках, смотреть, какие старые архитектурные или иные решения были не очень, и что в новой версии стало лучше, а что, может быть, и хуже.

    2. Затем переходите на Yii 2.

    3. И - никому, я повторяю, никому - ни в коем случае, ни при каких условиях, ни при каких обстоятельствах - не говорите первым, что вы кодите на Yii 1.
    Видели хитрую рекламу БАДов и прочего дерьма, где мелким, серым шрифтом написано: "не является лекарственным средством"?
    Вот и ваши слова о знании Yii 1 в вашем резюме тоже должны с той же силой "бросаться в глаза", что и этот шрифт в рекламе.
    То есть максимум можно сказать "я пишу на Yii2, также знаю Yii 1" - но не более того.
    А выпячивать в незнакомой фирме свое знание Yii1 первым, пока вас не спросят, нельзя ни в коем случае.

    Я не шучу.
    Я сам по большей части десктопник. И когда пришлось не то что бы даже общаться - а просто явиться серьезным веб-девелоперам из крупных фирм (а может и не очень крупных, но зато тоже очень серьезных), то их просто повергло в шок мое наплевательское отношение к актуализации версий используемого инструмента.
    Однажды я написал на хабре статью-урок для начинающих по Yii2. По Yii2, Карл, даже не по Yii1. Но вот забыл я там расписать пару суперважных фич: не использовал ActiveRecord и не использовал Gii (вместо этого показал новичкам, как все это делается вручную). Боже... Такого бурления фекалий в комментах под своими постами, такого количества минусов, такого количество обозленных и оскорбленных, такого своего аккаунта с такой своей репутацией - я еще не видел никогда...

    Я подумал, что это просто на хабре собираются какие-то злые люди, и решил то же самое повторить то же самое повторить на другом сайте, другой страны, и с совсем другим инструментом.
    А именно, я написал... Нет, точнее сказать, я посмел написать статью по переходу с ASP.NET WebForms на ASP.NET MVC... О ужас, на ASP.NET MVC 2-3 версий!
    Бедные иностранцы, мое преступление буквально лишило их дара слов, они даже уже не могли бурлить в комментах, они могли только тыкать кнопку минуса и кнопку репорта, ну и дальнейшая судьба моего поделия, очевидно, очевидна: "posted 32.13.2015 9:00, deleted 32.13.2015 20:00".

    Короче, я уже отчаялся копаться в причинах, но это факт: увидев версию, хоть на один major отличающуюся от новейшей, серьезные веб-синьоры бесятся так, как будто вы под винду хотите писать для них на голом ассемблере. Как будто вы колете для них дрова каменным топором. Как будто...
    При этом их просто невозможно убедить в том, что изложено в пункте 1, особенно начиная с "Как отмечу я". Просто невозможно. Я пробовал. Не пытайтесь.

    В общем, надеюсь, хоть кто-то оценит мой пост таким, какой он есть - офигительно длинный, офигительно ванильный и - в руках умелого продавца себя (то бишь устраивателя себя на работу) - офигительно полезный.
    Всем желаю удачи!
    Ответ написан
    Комментировать
  • Какая сейчас перспективная .Net технология по созданию Win Form приложений?

    newross
    @newross
    Product owner
    Смешались в кучу кони, люди.
    WinForms - это уже устаревшее API для разработки UI на .Net.
    WPF - современное API для того же дела.

    Дайте что ли определение своему "быть перспективным", а то непонятно, что вы вообще хотите получить.
    Как ни странно, но гугл в течение 0.05 секунды находит годную книгу по WPF.
    Ответ написан
    1 комментарий
  • Что это с хромом, как починить?

    Ernillew
    @Ernillew
    Администрирую *nix-системы с 1997 года
    Отрисовка через OpenGL, а вот он и поломался.
    Поставьте Debian/Ubuntu где будет все работать из коробки. Ну или если хотите дальше мучиться, то курите что у вас сломано, иксовый драйвер, поддержка в ядре, меса несвежая или слишком свежая.
    Ответ написан
    Комментировать
  • Написание первой CMS. Как лучше?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Т.е. прежде чем мне написать CMS мне надо "перелопатить" тысячи исходных кодов различных CMS, изучить их, проработать с ними как минимум год чтобы понять как написать правильно свою систему?


    Именно так. Я бы даже сказал годика так 3 хотя бы, и пару десятков разных проектов. Важно что бы вы получили разный опыт.

    Неужели чтобы написать даже самую простую CMS для личных элементарных нужд придется изучать куча всего другого чтобы выстроилась точная картина о ее разработке?


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

    но интерес составляет написать самому

    Начните с фреймворка:

    - библиотека для рендринга шаблонов (буферизация вывода, работа с файловой системой немножко)
    - библиотека для маршрутизации запросов (прошаритесь в регулярках)
    - библиотека для работы с базой данных (не ORM, начните с Table Data Gateway или DAO хотя бы. Прошаритесь в SQL минимально).
    - Ядро, связывающее все это вместе. Желаельно с какой-то концепцией мидлвэров, что бы все остальныекомпоненты ничего не знали о ядре. (прошаритесь в HTTP)

    В целом же писать CMS очень и очень скучно и долго. Вы намного быстрее прошаритесь во всем что надо делая отдельные компоненты. Благо сейчас век composer-а и вы можете крутить и вертеть фреймворками как хотите, подменяя чужие компоненты на свои.
    Ответ написан
    6 комментариев
  • Защита от CSRF. Насколько правильный подход?

    miraage
    @miraage
    Старый прогер
    1) создаем токен
    2) пишем в сессию
    3) добавляем в нужные места во вьюхах. например, hidden-поля в формы или устанавливаем какой-нибудь заголовок, если запросы делаются через AJAX
    4) при каждом POST/DELETE/PUT/PATCH запросах проверяем входной токен и токен в сессии. не совпали = пока.
    Ответ написан
    2 комментария
  • Как узнать чем была скомпилирована программа?

    riky
    @riky
    Laravel
    в большинстве случаев это знание мало полезно. ну узнаете что c++ например скомпилировано, вы думаете через среду разработки с++ файл можно будет назад в исходники декомпилировать?

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

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    вот тут
    https://habrahabr.ru/post/275595/
    начните с
    from multiprocessing import Pool
    Ответ написан
    Комментировать
  • Заработок на контекстной рекламе на своём сайте на 2016 год?

    @LiguidCool
    Все просто. Народ наставил ADBLOCK'ов только потому, что многие разработчики совсем ах*ли и ставили тонны рекламы увеличения членов, всплывающие окна и прочие чудеса.
    Выход? Во первых следите за тем что рекламируете и как. Во вторых попросите пользователей отключить блокировку ( например ненавязчивая строчка вверху страницы). Можно ограничивать доступ к определенным данным. Например как делает рутуб - разрешает просмотр только роликов в низком качестве.
    Ответ написан
    1 комментарий
  • Поиск в таблице базе данных mysql?

    yarkov
    @yarkov
    Помог ответ? Отметь решением.
    SELECT * FROM `tablename` WHERE `mail`=$_POST['mail'];
    Вернет или массив с данными или null.
    Экранируйте и обрабатывайте сами.
    Ответ написан
    Комментировать
  • Можно ли как то использовать cvs файл как базу данных в asp.net?

    IamKarlson
    @IamKarlson
    ASP(?).NET, SQL-разработчик
    А разве стандартный драйвер Oledb от Excel'я не подходит?
    Ответ написан
    1 комментарий
  • Где взять SIM-карту для GPS-трекера, работающую по всему миру?

    ruFelix
    @ruFelix
    Предсказание будущего по руке, таро, кофе.
    У нас года полтора назад ничего лучше чем мегафон вот с этой опцией не нашлось. Там что то около пары рублей в день набегало.

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

    Туристические симки там дорогой стартовый комплект, европейские там муторно с покупкой не резидентам.

    У производителей тех трекеров о которых вы говорите индивидуальные договора с операторами.
    Ответ написан
    2 комментария
  • Где взять SIM-карту для GPS-трекера, работающую по всему миру?

    @other_letter
    1 вариант - самые обычные симки. Покупаются в супермаркетах.
    2 вариант - т.н. "туристические". Гуглится без проблем.

    А вообще "не гонялся бы ты, поп, за дешевизной...". Это нормальные производственные затраты. Если симка раз в час будет "кушать" трафика для телеметрии - контора с несколькими машинами не обеднеет.
    Ответ написан
    Комментировать