Задать вопрос
  • Как избежать параллельных запросов MySql?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    По-моему, это не вопрос, а очередная влажная фантазия.
    Один и тот же юзер не в состоянии создавать "параллельные запросы".
    Тут скорее логика хромает. Зачем-то сделано удаление записи, дальше идёт какое-то анонимное голосование(?!). почему-то можно ставить плюсы несколько раз.

    Удалите этот вопрос и вместо этого спросите, как сделать голосование нормально. В общем случае все делается 1 запросом.
    Ответ написан
    5 комментариев
  • Как лучше всего делать тестовые задания?

    0xD34F
    @0xD34F
    нормален ли такой подход?

    Да. Нет. Не знаю. Что за детсадовские вопросы? Уточните у рекрутера, какой вариант предпочтительней.
    Ответ написан
    Комментировать
  • Как сделать бонус каждую минуту?

    @oleg_ods
    Добавить в базу время начала начисления бонуса и при запросе значения бонуса вычислять разницу в минутах между текущим временем и временем начала начисления.
    Ответ написан
    2 комментария
  • Ошибка в скрипте, почему главная страница грузится 15 секунд?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    боожечки, нежто тяжко расставить 5 таймеров и посмотреть сколько времени что выполняется? 2 минуты работы.
    Ответ написан
    Комментировать
  • Сколько стоит час веб-разработчика-фрилансера?

    @deliro
    Ты веcь такой кругом молодец, то знаешь, это знаешь. А теперь представь себе среднестатистический проект, который должен приносить бизнесу деньги. За две недели работы ты едва напишешь хлипкий CRUD для данных, неправильно смаппив бизнес-сущности в объекты ORM, ещё через месяц натянешь какой-то слайдер на jQ, попутно захватив 2мб JS кривых библиотек, а через два заказчик поставит тебе плохую оценку, потому что твой ценник он оплатил не за то, что ему нужно, а потому что ты знаешь монады, которые ему даром не сдались.

    А теперь давай представим простого программиста. Из алгоритмов он с трудом вспоминает сортировку пузырьком, а двусвязный список — предел его знаний о структурах данных, и даже этим списком он пользовался два раза в жизни. Хаскель он никогда не видел в глаза, C++ учил только в школе, вместо этого пишет неэффективный код на PHP. И у него есть опыт. За день он распишет сущности, за второй сделает универсальный CRUD, на третий день поднимет фронт на React'е с SSR. Да, внутренности проекта будут "медленными". Вместо O(logN) что-то будет выполняться за O(N) или даже O(N^2), но всем похер. Пока всё работает на приемлемом уровне — бизнес радуется.

    Кстати, к чему эта поучительная лапша? Я хотел сказать, что всеми этими модными словами можно пугать друзей и преподавателей, но в реальной жизни все алгоритмы уже реализованы, все типы данных уже подобраны оптимально. Знать их полезно для себя (чтобы мозг не атрофировался), но не для работы. Для работы тебе нужны такие навыки как:

    * Оптимальный баланс между говнокодом и идеальным кодом
    * Оптимальный баланс между скоростью разработки и оптимизацией кода
    * Оптимальный баланс между поддерживаемым кодом и костылями
    * Умение использовать те инструменты, с которыми ты работаешь. Опять же, для того, чтобы писать быстро, при этом имея минимальное количество говнокода и обеспечивая максимальную поддерживаемость (в пределах сроков). Например, можешь выкинуть в помойку свой Vim, как бы круто ты себя не чувствовал, разрабатывая в консольном редакторе, если продукты от JetBrains позволят за это же время сделать что-то лучше или чего-то больше
    * Чувство "знаю больше менеджеров". Это то чувство, когда тебе кажется, что "вот эта фича скоро изменится" и надо сделать архитектуру заранее более гибкой. Или "вот эту фичу мы через месяц выпилим" и не надо тратить на неё силы — напиши костыль и через месяц с чистой совестью удали его
    * Знания, как сделать ту или иную фичу. Потому что фичи повторяются (немного видоизменяясь) от проекта к проекту. И если ты сделал что-то за два дня, в следующий раз ты похожее сделаешь за три часа

    Что касается инструментов, выбери любой полноценный фреймворк, который умеет решать 90%+ потребностей "из коробки": Symfony, Django, Laravel

    Всякие "минималистичные" поделия вроде Falcon, Flask (в PHP не знаю, я на питоне пишу) оставь хипстерам. Пусть они говорят: "Мой фалкон такой быстрый, он написан на Cython". Тебя это не должно волновать, потому что бизнес с твоей скоростью разработки уже заработал достаточно денег, чтобы купить ещё десять серверов, пока фалконисты неделю гуглили, как прикрутить миграциии и запустить юнит-тесты на VPSке за пять баксов.
    Ответ написан
    5 комментариев
  • Зачем учить алгоритмы сортировки, если есть уже готовые методы сортировки?

    longclaps
    @longclaps
    Алгоритмы сортировки - стандартный материал для обучения студентов теме "сложность алгоритмов". Это как диктант - слова и без тебя есть, а научиться писать их всё-таки надо.
    Ответ написан
    Комментировать
  • Рус/Анг версии сайта. Как вывести нужный язык нужному IP?

    swanrnd
    @swanrnd
    Издатель HTML5 игр
    А не смущает что некоторые пользователи в СНГ за пределами РФ лучше знают русский?

    Лучше определять по языку браузера: Как определить язык браузера пользователя?

    А так: https://www.php.net/manual/ru/book.geoip.php
    Ответ написан
    Комментировать
  • Как сохранять заполненность полей формы при ошибке отправки (если поле не проходит валидацию)?

    Stalker_RED
    @Stalker_RED
    Либо после отправки заполнять форму этими-же данными,
    либо вообще не позволять отправить ее, а проверку делать на js, возможно используя ajax.

    В идеале сочетать оба способа, чтобы работало и без js.
    Ответ написан
    Комментировать
  • Правда ли что рынок веб разработки "перегрет"?

    OTCloud
    @OTCloud
    Программирование и Архитектура ПО
    100% перегрет, но не программистами или веб-мастерами, а индивидами, которые решили что веб это просто и легко и не стоит сильно париться над своими скиллами и знаниями.
    Ответ написан
    8 комментариев
  • Для чего в MVC модель?

    @vanillathunder
    Модель - это не только сущности, под модели подразумевают всю бизнес логику(Сервисы, хэлперы, запросы к бд и тд)
    Ответ написан
    Комментировать
  • Рынок digital-услуг переполнен?

    DevMan
    @DevMan
    любой рынок сейчас наполнен, любой.
    но найти пряморукого сантехника/электрика/дантиста/айтишника - проблема.

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

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    С разделителями в бд вообще никогда ничего хранить не надо.
    Если информация о файлах в БД не нужна, то не хранить её там вообще.
    Делать отдельные папки будет вполне достаточно.
    Ответ написан
    5 комментариев
  • Как исправить запрос MySql?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    и дубликатов по идее быть не может
    Почему не может? Вы раз в сутки копируете сообщения за двое суток. Дубли просто обязаны появиться.
    Ответ написан
  • Почему не подключается к БД через ssh?

    а у вас mysql разрешен доступ не на локалхост ?
    Ответ написан
    Комментировать
  • Можно ли подтвердить свою квалификацию IT-специалиста без диплома?

    Zoominger
    @Zoominger Куратор тега IT-образование
    System Integrator
    Не бросайте учебу, пожалеете.
    Кстати, это уже 3643794-й вопрос про ВО и IT, могли б и по сайту погуглить для приличия.
    Ответ написан
    3 комментария
  • Как сортировать по части строки?

    inoise
    @inoise
    Solution Architect, AWS Certified, Serverless
    Нормализуй базу, вынеси даты в отдельную таблицу и работай уже с ней в нормальном формате, с join'ами. А не вот этот весь треш.
    Ответ написан
    6 комментариев
  • Какой стиль программирования выбрать, чтобы не вникать спустя время в проект?

    sim3x
    @sim3x
    TDD

    Забыли, что делает проект
    Запускаем тесты
    Смотрим, возможно остались ошибки с todo
    Фиксим их
    По пути смотрим на юзерстори
    Находим место, где требуется внести правку в юзерстори
    И далее по циклу

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

    @kova1ev
    Представь у тебя есть какой-нибудь метод, который принимает в агрументах объект, например, типа User
    doSomething(User user)
    Ты можешь передавать в этот метод любой объект типа User или объекты классов, наследующих User.
    Но можно сделать еще гибче, например описать некий интерфейс UserInteface и указать в определении метода его:
    doSomething(UserInterface user)
    Теперь ты можешь передавать в метод объект любого класса, который реализует интерфейс UserInterface.
    Разумеется, изначальный класс User из этого примера тоже должен реализовывать этот интерфейс.

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

    И, как уже написали выше, один класс может реализовывать несколько интерфейсов.
    Ответ написан
    Комментировать
  • Как связать число со строкой в MySQL?

    Adamos
    @Adamos
    Если у вас в одной ячейке хранится несколько значений, значит, вы не привели данные к нормальной форме. Никакими костылями исправить это не получится (точнее, варианты есть, но они будут еще хуже).
    В данном случае напрашивается отдельная таблица и связь один-ко-многим или многие-ко-многим через нее, банальнейшее решение для SQL.
    Ответ написан
    1 комментарий
  • На чем написать игру?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    на каком языке можно написать игру?

    крестики-нолики на любом, ну практически.

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

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

    Как вы выбрали на чем писать игру?

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

    Редакторы и прочие движки не интересны

    А это зря. Если собираешься в игрострой - то как раз эти инструменты очень вероятно пригодятся.
    Ответ написан
    2 комментария