Задать вопрос
  • Как вы освоили шаблоны проектирования?

    27cm
    @27cm
    TODO: Написать статус
    Вот вам 12 маленьких задач на 12 паттернов:
    github.com/zfcampus/zendcon-design-patterns

    1. Открываете папку с паттерном.
    2. Читаете README.md с описание задачи.
    3. Открываете exercise.php и пытаетесь решить задачу, применив соответствующий паттерн.
    4. При необходимости вспоминаете теорию: github.com/domnikl/DesignPatternsPHP
    5. Сверяетесь с решением в solution.php.
    Ответ написан
    7 комментариев
  • Как правильно оформить запись в файл?

    Taraflex
    @Taraflex
    Ищу работу. Контакты в профиле.
    Есть несколько файликов *.php, которые генерируются клиентом.

    Не нужно никакие php файлы генерить клиентам. Это как правило потенциальная дыра.
    Сохраняйте данные например в какой-нибудь json. В php работа с ним тривиальна.
    https://secure.php.net/manual/ru/function.json-dec...
    https://secure.php.net/manual/ru/function.json-enc...
    Записываю файл с помощью fwrite

    Попробуйте https://secure.php.net/manual/ru/function.file-put...
    Ответ написан
    Комментировать
  • Как защитить сайты от взлома?

    @inkvizitor68sl
    Linux-сисадмин с 8 летним стажем.
    В первую очередь надо запретить писать веб-серверу где-либо, кроме tmp_dir (его отдельной) и session_dir. Всё остальное - полумеры.

    > Еще хотелось-бы вести логи, в которых отмечалось-бы появление новых php скриптов в папках с сайтами.
    Называется git + git status по крону в почту (если отличается).
    Ответ написан
    2 комментария
  • Кроссплатформенность c++ -> Qt\c++, c++\CLI?

    @SZolotov
    Asp.net core, MAUI,WPF,Qt, Avalonia
    Самое главное не выражайте подобные мысли на работе. Ни в слух, ни письменно, ни как. В середине первого предложения руководитель вас уволит, если повезет то на втором. Ближе к концу и до рукоприкладства дойти может.
    Ответ написан
    2 комментария
  • Как вы работаете с phpstorm?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    синхронизация данных идет в одну сторону - с хоста на сервер.

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

    @alexxandr
    you'll see in memory only 0xDEADFACE
    scanf("%d",a);
    измените на
    scanf("%d",&a);

    и
    scanf("%d",b);
    на
    scanf("%d",&b);
    Ответ написан
    1 комментарий
  • Виновен ли я в самописном движке?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    с одной стороны SEO-ник не прав, так как.. ну это очень глупое утверждение

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

    То есть притензия SEO-ника возможно была связана с тем что:

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

    Мораль: эксперементы в свободное время, набирайтесь опыта. Старайтесь использовать готовые решения. Помимо wordpress есть масса небольших и удобных CMS с базовыми штуками которые нужны SEOникам и удобны в допиливании программистами.
    Ответ написан
    4 комментария
  • Чем может быть полезен C++ веб разработчику?

    Zifix
    @Zifix
    Barbatum
    Нужно это для общего профессионального развития, напрямую не пригодится. Нужно брать учебник по (C/Assembler), упражнения, и потихоньку проходить. Причем С желательно параллельно с Ассемблером, С++ тут как-то мимо.
    Ответ написан
    Комментировать
  • Как правильно понять сущности CoreOS и Docker?

    Insaned
    @Insaned
    CoreOS операционная система - Да
    На ней установлен Docker. - Да
    docker контейнер - это своя операционная система - не совсем, это скорее эмулятор операционной системы, но для дизайнера так можно считать.
    может потом mongo перекинуть с одной ноды на другую - сейчас вам скажут, что перекидываь контейнер с ноды на ноду - моветон и надо на новой ноде построить новый контейнер, а данные среплицировать. Но в целом, опять же да - так можно.
    Ответ написан
    1 комментарий
  • Как разобраться в исходном коде такого проекта как Mysql?

    Поиск использования и определения очень помогает. В любой IDE есть. В Vim/Emacs/Других плагинами реализуется.

    Ну и не ждите, что вы выучите исходники, просто читая их, и будете досконально в них разбираться. Так не бывает.
    Сначала определитесь, зачем вам смотреть исходники. Маленькая производительность - подрубаем профайлер, ищем узкие места. Лезем в код, оптимизируем, тестируем. Повторяем пару итераций.
    Не хватает функционала? Например, новый тип добавить хотим. Ищем модули, которые реализуют похожий функционал. Делаем свой тип по подобию существующих. Тестируем сервер, реплику. Профилировщик натравливаем и т.д.
    И вот вы уже разобрались в некоторых частях.

    А без цели лезть в код, что бы "стать спецом" - ничего не выйдет.
    Ответ написан
    Комментировать
  • Как писать юнит-тесты С++ проектов?

    dima11221122
    @dima11221122
    Разработчик программного обеспечения
    Классика жанра - Кент Бек. Там как раз то, что вы хотите. Но, как сказал предыдущий оратор, там все интуитивно понятно, и эта книга - лишнее тому подтверждение. Вопросы возникают при проектировании больших приложений. На этот счет могу посоветовать эту книгу. Хоть примеры там написаны на C#, но из нее можно почерпнуть много интересных идей.
    Ответ написан
    Комментировать
  • Есть курс по английскому языку для программиста?

    IonDen
    @IonDen
    JavaScript developer. IonDen.com
    Прежде всего идите на разговорные курсы! Как только сможете свободно говорить на языке хотя бы на бытовом уровне, в голове что-то щелкнет и встанет на свои места. Ну а дальше останется только пополнять словарный запас техническими терминами.
    Ответ написан
    2 комментария
  • Почему может не работать apt-get на Ubuntu?

    Olej
    @Olej
    инженер, программист, преподаватель
    Куда копать, товарищи?

    У вас нет актуальных списков репозитариев, /etc/apt/sources.list
    Лучше всего содержимое генерировать отсюда: Ubuntu Sources List Generator
    Ответ написан
    Комментировать
  • Как правильно доработать код капчи?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега PHP
    setcookie("coded");
    Программист: Дорогой php, установи, пожалуйста, пользователю куку с кодом coded и дефолтным значением в виде пустой строки.
    php: Слушаю и повинуюсь.

    $_COOKIE['coded']= $code_capcha;
    Программист: Дорогой php, запиши в эту куку значение капчи.
    *Демонический смех, отблески адского пламени*
    php: Муахаха, он думает, что таким образом пишет в куку, а на самом деле просто обновляет глобальный массив с данными прошлых кук. Я просто выкину этот массив при окончании скрипта и пользователь получит пустую куку, которую программист установил изначально! Гениальный план!
    Ответ написан
    Комментировать
  • Как реализовать систему рейтинга в игре?

    k12th
    @k12th
    console.log(`You're pulling my leg, right?`);
    У parse.com есть бесплатный план, вам хватит на первое время. А волшебное слово для гугла -- BAAS (backend-as-a-service).
    Ответ написан
    Комментировать
  • Какие они, ваши наблюдения и опыт о количестве интересных проектов во фрилансе/удаленной работе?

    syschel
    @syschel
    freelance/python/django/backend
    Самое сложное во фрилансе, не языки и технологии.
    • Умение продавать себя в толпе конкурентов. Это самое сложное. Есть много высококлассных специалистов, сидящих на среднем окладе. Они тупо не могут себя продать даже в другую компанию, а не редко и боятся менять привычное место.
    • Умение грамотно составить или согласовать ТЗ. Так что бы проблема заказчика решалась в оговоренные сроки и бюджет. А не перерастала в вечнострой с кучей доделок и переделок с базовым бюджетом. Когда обе стороны уже ненавидят друг друга. Ибо работая в офисе разработчиком, всё это ведут менеджеры и тим лиды, а вам спускают конкретные задачи. Вам же придётся научиться понимать, что хочет клиент, не разбирающийся в программировании, говоря то или это. Научиться понимать и предлагать те решения, которые будут ему актуальны с учётом технологий и отказывать в том, что сделать не реально. Находить компромиссы, но опять же, объясняя почему так или иначе.


    Самое лучшее для фрилансера, да и любого разработчика. Это большие и долгие проекты. Когда можно постоянно заниматься одним. А не вникать каждый раз по новой, не привыкать к новому заказчику. Да, тут есть шанс отупения и застоя в развитии, но это лечится средними своими проектами или доп работой небольшой. Хотя, если проект живой и развивающейся, руководство ищет способы развития бизнеса и само заинтересованно в росте. Тогда можно и на текущем проекте развиваться, пробуя новые технологии, службы, стеки. Это будет рост как специалиста.

    А технологии, языки. Это уже второстепенно. Главное развиваться. Ибо в попсовом PHP можно делать большие проекты и быть специалистом с большой стоимостью часа или на редком python/java сидеть и быдлокодить мелочь за копейки. Главное не метаться, а развиваться и расти, беря более сложные и более длинные проекты. И брать их не с "поддержкой", а с возможностью постоянного развития. Задачи "в стол", не интересны. А вот задачи на перспективу, на развитие. Это уже интересно. Ибо "в стол" это как правило теория(придумали, сделали, забыли). А развивающиеся, это практика на реальных условиях, когда в процессе приходится много менять (менять бизнес модель, менять архитектуру из-за возросших нагрузок, менять технологии).
    Ответ написан
    5 комментариев
  • Что лучше изучать для Android NDK: Go или C/C++?

    gadfi
    @gadfi
    https://gamega.org
    Преждевременная оптимизация — корень всех зол

    С++ замечательный язык, да немного странный ....хорошо временами он очень странный, но ему как первопроходцу это простительно, особенно учитывая какие возможности он дает.
    Но в 97% при разработке под android эти возможности вам не нужны.
    да ... увы и ах, но это так, знание с++ вам слабо помогут в разработке под android до тех пор пока вы не освоили хотя бы на базовом уровне android sdk, вы просто не поймете когда вам действительно нужно ndk а когда накладные расходы будут выше чем скорость выполнения на java.

    Я читал статью на хабре, про которую вы говорите ─ бред. Бред не go, с тем же успехом могло быть с++, но из за определенной желтизны статьи создается впечатление что go решение всех проблем ... не в коем случае не укор автору статьи, но мне кажется он просто захотел поиграться с новой технологией ) почитайте внимательно комментарии к статье, там как это часто бывает куда больше интересного ))

    Sayber ⏰ по моему вы не внимательно читали ответ one pavel ваши примеры так раз серверных приложений. И таки да, go действительно только начинает развиваться, пускать его в продакшен довольно не осмотрительно, у android и так достаточно багов, чтобы без серьезной необходимости играться еще с новыми

    Если кратко по вопросу c++ or go то однозначно c++/c

    Если более практично .... Александр Василенко не страдайте фигней. У вас есть опыт тестирования, в мире android на первых порах он будет куда ценнее чем опыт с++. В большинстве проектов вы не встретите с++
    Освойте базовые вещи для android, если география позволяет идите в офис, нет ищите удаленку/фриланс, потом уже поймете что вам нужно.
    Ответ написан
    5 комментариев