• Как быстро и надежно закрывать задачи по сайту не нанимая программиста?

    @Stalinko Куратор тега Фриланс
    PHP'шник и фрилансер до мозга костей
    Я пишу со стороны программиста. У меня есть ряд старых клиентов, которые иногда просыпаются и просят что-то доделать. Стараюсь найти для них время и помочь.

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

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

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    1 комментарий
  • В чем идея и как работают шаблоны?

    ipatiev
    @ipatiev Куратор тега PHP
    Потомок старинного рода Ипатьевых-Колотитьевых
    Вопрос очень хороший.
    А ответ на него очень простой.

    Шаблоны нужны для отделения логики приложения от логики отображения.
    Разделив их, мы получим сразу кучу выгод:
    • Нормальную структуру приложения, когда вывод начинается только после того, как отработала вся логика. То есть у нас никогда не будет проблем с ошибкой headers already sent, с возвратом json-а вместо html, с выводом в page header-е тех данных, которые появляются только в процессе работы скрипта
    • Мобильность - один и тот же движок можно будет использовать на нескольких сайтах, меняя только шаблоны, но весь код оставляя одинаковым. Что поможет, в частности, вносить обновления в движок и исправлять ошибки на всех сайтах разом.
    • Разделение труда - сейчас обычно над отображением работают фронтендеры, то есть, когда бизнес-логика отделена от шаблонов, то любой фронт сможет с ней работать


    Соответственно, главное, что надо знать про шаблоны - это то, что любой вывод в РНР скрипте начинается только после того, как отработала вся бизнес-логика.
    Также важно понимать, что в самом по себе смешивании "кода и разметки" ничего ужасного нет. В шаблоне всегда будет код. Без него невозможно выводить динамический контент. Важно только - какой это код, к чему он относится? Код в шаблоне должен относиться только к самому шаблону. На первых порах новичку сложно это отличить. И это еще один плюс специализированных шаблонизаторов.

    После этого есть варианты, которые отличаются в основном удобством работы с кодом шаблона.
    Править HTML код записанный в виде РНР строки - это САМЫЙ неудобный .

    Дальше идут всякие наколенные решения, типа
    бизнес-логика
    include header
    ?>
    хтмл конкретной страницы
    <?php include footer ?>

    или чуть более продвинутый, когда шаблоны хранятся отдельно и могут вкладывться друг в друга. Сначала пишем функцию,
    function render_template($filename, array $data = [])
    {
        ob_start();
        extract($data);
        require __DIR__ . '/' . $filename;
        return ob_get_clean();
    }

    а потом в коде страницы пишем
    бизнес-логика
    ...
    $page_html = render_template('page.tpl.php', [
        'data' => $data,
    ]);
    echo render_template('main.tpl.php', [
        'navigaton' => $nav_list,
        'title' => $title,
        'page' => $page_html,
    ];

    где сами шаблоны это
    ...
            <?php foreach ($navigation as $item): ?>
                <li>
                    <a href="<?= e($item['href']); ?>"><?= e($item['title']); ?></a>
                </li>
            <?php endforeach ?>
    Важно! Любой вывод в этих шаблонах должен экранироваться в обязательном порядке (кроме очевидных случаев, когда мы выводим результат рендера).

    Ну и наконец нормальные шаблонизаторы, из которых я горячо рекомендую Twig.
    Главное, что про него надо знать - даже самые зелёные нубы осваивают его без затруднений. И настоятельно рекомендую сразу перейти на него, после того как наиграетесь с решениями на коленке.
    Ответ написан
    9 комментариев
  • Swift. Как с помощью цикла найти min и max в массиве?

    briahas
    @briahas
    ObjC, Swift, Python
    Извините, но это - "школьная" программа. Тут не решают за других "домашку". Тут помогают понять то что не понятно.

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

    glaphire
    @glaphire Куратор тега PHP
    PHP developer
    Я помню что для похожих ситуаций можно было использовать шаблон Состояние. Его фишка в том, что можно задать валидную цепочку состояний, а само состояние инкапсулируется в классах
    Ответ написан
    1 комментарий
  • Как программировать бизнес процессы?

    @dzhebrak
    Указанную задачу можно достаточно удобно реализовать с помощью компонента Symfony Workflow https://symfony.com/doc/current/workflow.html
    Ответ написан
    2 комментария
  • Как защитить бота Telegram?

    SilenceOfWinter
    @SilenceOfWinter Куратор тега PHP
    та еще зажигалка...
    все те же что и для любого сайта - sql иньекции в первую очередь. но поверь человеку разрабатывающему гос. проекты - если даже мои никто не пытается взломать, то твои вообще нахрен кому сдались.
    Ответ написан
    1 комментарий
  • Где и как хранить много ГБ изображений для сайта?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    смотри как тут пацанчики сделали
    mywed.com

    фотки каждого - в гугл акке каждого
    Ответ написан
    5 комментариев
  • Как реализовать telegram-бот, который удаляет водяной знак на видео?

    saboteur_kiev
    @saboteur_kiev Куратор тега Python
    software engineer
    Для начала, вы уже умеете удалять вотермарки без бота? Руками?
    На какой машине будет выполняться удаление? Куда будет закачиваться? Кто будет платить за электричество?
    Ответ написан
    Комментировать
  • Не могу понять: как работают post запросы в python?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Почитайте как устроен HTTP-протокол хотя бы на вики.
    Есть http-сервер, который ждёт подключений на свой порт и обрабатывает запросы.
    Каждый запрос характеризуется методом (get, post, put, head, и т.д.), адресом (и это отдельный фактор, никак не взаимосвязанный с методом), заголовками (там у нас пожелания клиента о формате ответа, куки всякие, инфа о клиенте), телом (там у нас данные форм post-запросов, просто загружаемые файлы вроде аватарки или json'а...).
    Каждый такой запрос получает сервер и даёт на него какой-то ответ или даже может проигнорировать закрыв или не закрыв соединение.

    Написать post-запрос - это, как следует понимать, написать код для выполнения post-запроса (от клиента к серверу, конечно же, иначе не бывает).
    Если сервер по данному адресу или по другим каким-то причинам не принимает post-запрос, то вы не сможете со стороны клиента заставить его сделать это.
    Даже если будете бить палкой.
    Сервер вам будет отвечать ошибкой с каким-то кодом. Если разработчики сервера молодцы, то код ошибки будет релевантен ситуации, а вообще там nt[ybxtcrb может быть что угодно, хоть 666 Devil request success.

    Вы не показали здесь исходники сервера, не показали пример кода, который у вас используется, не понимаете даже близко как работает протокол HTTP, не понимаете что спрашиваете...
    Как вы вообще ожидаете понять что вам отвечают?
    Facepalm.
    Ответ написан
    2 комментария
  • Хостинг для сайта уровня ВК?

    opium
    @opium
    Просто люблю качественно работать
    ВК сам себе хостер, сам себе поддержка, у себя не ворует и не ломает
    Ответ написан
    1 комментарий
  • Как сейчас лучше делать - один файл css и js или много мелких файлов?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега Веб-разработка
    Зависит от проекта, поэтому нужно пробовать разные варианты и измерять. Готового рецепта нет.
    Я делал на эту тему доклад в разрезе HTTP/2: https://www.youtube.com/watch?v=rQDd5kCwDj8 Но там и в принципе про лучшие практики фронтенда много всего полезного.
    В презентации куча ссылок.
    Ответ написан
    2 комментария
  • Проектирование и архитектура приложений?

    dmitriylanets
    @dmitriylanets
    веб-разработчик
    И всю логику по обработки исключений запихнуть в класс MyException.
    - не верно, логика обработки исключений должна быть в коде который использует ваш функционал и ловит эти исключения,
    поэтому первый вариант
    Ответ написан
    Комментировать
  • Какой инструмент и язык выбрать для сервиса создания анимации?

    alfss
    @alfss
    https://career.habr.com/alfss
    На любом языке, с любой библиотекой которая сможет это сделать.

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

    Если у вас коммерческий проект, наймите человека с опытом.
    Ответ написан
    6 комментариев
  • Где и как найти бесплатную рабочую силу для проекта for fun и где обсуждать идеи?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Идеи ничего не стоят. Это первое, что нужно понять и взять за аксиому. У молодых программистов тоже куча идей. И кто будет судить, у кого идея лучше? Каждый будет думать про себя: "моя-то идея точно лучше, ведь я ее холил и лелеял".

    Далее, отвечая на ваш вопрос, скажу главное. Вы ведь по сути хотите убедить других "молодых программистов" принять ваши идеи и присоединиться к вам. Что их убедит? Деньги! Нет, я даже не говорю про зарплату этим вашим последователям. Пусть работают на энтузиазме (хотя бы недолго). Но они, как и вы, должны верить, что идея стоящая. И здесь деньги выступают в качестве мерила успеха. Если вы сможете доказать, что идея принесет деньги, ну или пользу людям, что очень рядом, то за вами с радостью пойдут и помогут вам.
    spoiler
    Хотя выглядит немного странно. Крутая идея, вам весь доход, а остальные работают за спасибо. Это вам придется им отдельно объяснить/пообещать, либо сразу начать делиться.

    А как доказать, что идея принесет деньги/пользу? Точнее, ее реализация. Нужно посчитать и измерить, сколько именно принесет реализация. Только это позволит сравнить ее с другими идеями и выбрать лучшую. Так что если идея не прибыльная, то всё равно нужно придумать метрики, которыми вы будете измерять успех.

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

    Таким образом, вам нужно сформулировать чёткую измеряемую цель, раскрыть её в удобоваримом концепте, чтобы любой человек прочитал и заинтересовался. Плюс к этому добавьте прочие пункты документации, с которой, кстати, и начинается работа над реализацией идеи. Дальше сможете подойти к кому угодно и сказать: Привет, чувак, слушай, у меня идея, короче вот смотри - и протягиваете волшебную бумажку на 2 минуты чтения. Вот и всё, +1 человек в команду. Немного упрощенно, но примерно так работает. Если это будет инвестор, то с энтузиазма (на котором всё равно далеко не уедешь) можно сразу перейти на нормальные отношения.
    Ответ написан
    9 комментариев
  • Есть ли сайты, форумы, где можно получить отклик на вопрос об идее для сайта?

    @grinat
    Можешь тут писать, например я всегда готов бесплатно обосрать любую идею.
    Ответ написан
    Комментировать
  • Как хранить в столбце сумму двух других столбцов?

    @shevchenko__k
    Помогаю новорожденным web программистам
    тут столбец z не нужен. он формируется при запросе
    например
    SELECT x,y, x+y AS z FROM table_name
    Ответ написан
    Комментировать