• Держите ли вы проект на локальной машине?

    Wolfnsex
    @Wolfnsex Куратор тега Веб-разработка
    Если не хочешь быть первым - не вставай в очередь!
    Держать проект на локальной машине (в смысле иметь возможность запустить его на локалхосте) возможно только для маленьких проектов?
    Откуда у Вас такие заключения?

    Т.к. с ростом БД и сложности окружения redis + сервер очередей + логи и т.п. держать, запускать и обновлять это всё на локали становится сложно.
    Есть например, VirtualBox + Linux + [что-то ещё] + [...] и так далее. Ставите на виртуалку нужный вам набор софта, запускаете, пользуетесь.

    Сложности в установке/настройке программ... ну это очень риторический вопрос, кому-то сложно даже интерпретатор PHP из архива распаковать...

    Вопрос с тем, что может требовать значительных ресурсов (например, базы данных) занимая большой объём дискового пространства или создавать большую нагрузку на вычислительные ресурсы машины - тут вариантов несколько:
    1. Хранить базы данных не локально, а работать с ними удаленно
    2. Набор данных необходимый для разработчика - обычно ощутимо меньше, чем тот, что используется в реальном проекте. Используйте версию базы "для разработки", а не "продакшен" вариант
    3. Если позволяют ресурсы (например, объем жесткого диска) и есть необходимость - используйте полную версию БД. Нагрузку на БД создают не объёмы данных, а объёмы обращений к этим данных (условно конечно, но суть такова). Иными словами, если у Вас база занимает 500Гб и структура проекта построена адекватно - работать даже с такой БД может вполне "обычный" компьютер.

    И ещё вопрос: при использовании DEV-сервера можно держать файлы проекта у себя на машине и в PHPStorm либо автоматически либо вручную заливать изменения на сервер. А можно в шторме прямо к серверу подключиться и работать сразу с файлами на сервере, т.е. не иметь копии проекта у себя на машине по сути. Какой из этих вариантов лучше и почему?
    Не совсем понятно, что именно Вы подразумеваете под "DEV-сервером" и зачем он Вам нужен вообще? Я за более 10-и лет разработки с реальностью подобного рода серверов сталкивался в двух случаях:
    1. Необходимость иметь некоторый эталонный сервер и/или сервер, с помощью которого можно демонстрировать работу конечному заказчику или разработчикам проверять свои правки и нововведения в условиях "эталонного" окружения (что в целом легко реализуется в большинстве случаев, при возможность запустить виртуальную машину на компьютере разработчика)
    2. Мой рабочий ноутбук настолько слаб, что с трудом "тянет" даже phpStrom, не говоря уже о всяких VM и прочих "прелестях жизни", в этом случае меня неоднократно выручал удаленный вирт. сервер

    Далее, "подключиться к серверу и работать с файлами сразу там" - Вы что имеете в виду? Пробросить SSH-туннель или иным подобным образом подключить файловую систему сервера как сетевой диск? По моему, без прямой необходимости в обратном, "лучше" - использовать средства автоматического "деплоя". А как "лучше" выгружать файлы на конкретный сервер, "руками" или "как-то ещё" - зависит от множества факторов, в т.ч. от того, как часто это нужно делать, кол-вом "выгружающих" и т.д.
    Ответ написан
    1 комментарий
  • Могут ли несколько запущенных в Pycharm копий одной моей программы писать в один и тот же файл данные?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Запускаю 5 копий своей программы через pycharm, все они записывают данные время от времени в один и тот же файл. Чем это может грозить?
    Не думаю, что механизмы для работы с файлами Python чем-то отличаются от подобных механизмов в других языках. По этому, могу предположить, что если не вешать на файл блокировки (и не снимать их в последствии) - это может грозить хаотичностью этих самых данных в файле, а максимум - ошибкой во время записи (и то не факт).
    Ответ написан
    Комментировать
  • Как решить проблему с ошибкой Gulp:538?

    Wolfnsex
    @Wolfnsex Куратор тега CSS
    Если не хочешь быть первым - не вставай в очередь!
    Error: Cannot find module 'gulp-sass'
    Вы не пробовали установить модуль gulp-sass?
    Ответ написан
    Комментировать
  • Какой ModPagespeed ставить?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Какой ModPagespeed ставить?
    Поставить - Вы можете только модуль для Apache, причем делать это при наличии панели управления сервером - я бы крайне не рекомендовал.

    Версия PS для Nginx'а - собирается вместе с Nginx'ом, при этом, не смотря на то, что Nginx с недавних пор стал поддерживать динамическую подгрузку модулей (примерно как Apache), именно модуля, который бы не требовал пересборки Nginx'а - я пока не видел.
    Ответ написан
  • Как передать данные из Laravel во VueJs?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
  • Как правельно разбить вид Laravel?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Лично я, каких-то проблем особых не вижу. Ну не считая разве что применения ENV внутри шаблонов, но... это уже на Ваш вкус и цвет.
    Ответ написан
    Комментировать
  • Что нужно в портфолио бэкенду?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Собственно повторю вопрос, что нужно бэкенду в портфолио?
    Ну, Вы же сами ответили на свой вопрос - нужно ровно то, что у Вас было до этого. Не более того.

    Долго фрилансил. Писал crm-ки, инструменты, бизнес по и прочее в т ч и сайты с нуля.
    Никоим образом не хочу Вас чем-то обидеть, но, даже в лохматые времена, лет наверное 15 назад, когда ещё не было даже версии yii 1.0, мы уже пользовались SVN'ом, а лет 10 назад - начали пользоваться Mercurial/Hg, а потом переехали на Git... К чему я это всё... Написать сколь-нибудь стоящий проект, в современных реалиях последних лет 5-10 (как минимум), без использования системы контроля версий - можно в двух основных случаях:
    1. Автор кода чёртов гений, и он сразу пишет код правильно, при этом успевает делать бекапы, деплой и пр. стандартные операции "руками"
    2. Проекты настолько убогие, что для их разработки/поддержки/деплоя - система контроля версий не нужна

    В первом случае - Вам достаточно будет воссоздать всего 1 проект, любой, и этого будет более чем достаточно для Вашего портфолио. Во втором случае, с учётом столь глобального опыта - лучше написать проекты по примеру тех, что уже были (или хотя бы 1-2 из "лучших" Ваших творений), т.к. именно они помогали Вам "долго фрилансить".
    Ответ написан
    Комментировать
  • Laravel. Выдает ошибку при подключении dropzone.css файла?

    Wolfnsex
    @Wolfnsex Куратор тега Веб-разработка
    Если не хочешь быть первым - не вставай в очередь!
    хотя адрес записан правильно
    Переименуйте этот файл из .css в .scss, я думаю проблема решиться.

    P.S. В путях, где Вы этот файл подключаете, его соотв. тоже нужно будет переименовать.
    Ответ написан
    Комментировать
  • LEFT JOIN в одном запросе или два запроса с IN?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Что бы узнать что будет быстрее - нужно понимать, в каком порядке выполняется запрос. MySQL в этом плане довольно специфическая БД с массой своих особенностей.

    Наиболее простой вариант выяснить скорость выполнения запроса - посмотреть, сколько запрос выполняется в программе для администрирования MySQL (любой, вменяемой, например, HeidiSQL).

    Способ чуть посложнее - воспользоваться EXPLAIN.
    Ответ написан
    1 комментарий
  • Почему laravel говорит, что не существует контроллера?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    но выгружая на хостинг вылезает сообщение
    Это происходит из-за того, что файловая система хостинга (скорее всего, Linux'а) чувствительна к регистру в именах файлов (в отличии от FAT/NTFS Windows'а, на котором у Вас работает OpenServer).

    Что бы такого не происходило - называйте контроллеры с большой буквы. А ещё контроллеры можно складывать в отдельные папки, например Controllers\Admin\MainController ...

    Что бы узнать, что именно вызывает контроллер с именем с маленькой буквы:
    1. Можно поискать по коду всего проекта вот это слово: "adminMainController" (простой метод)
    2. Можно запустить отладчик и последовательно пройтись по коду, однозначно выяснив где косяк

    UPD. Если хотите избежать подобных проблем в будущем - можете сразу (с начала разработки проекта) использовать любой виртуальный сервер с Linux'ом, запуская сайт там. Вариантов масса всяких:
    1. Взять VirtualBox и поставить туда Linux (и настроить всё как надо) самому
    2. Взять какого-нибудь готовый Vagrant или что-то в этом духе
    3. Взять подготовленный специально для Laravel - Homestead

    Лично я использую 1-ый вариант и дома и на работе и проблем за N лет пока ни разу не было. Правда, надо сказать использую такие варианты я не по тому, что у меня проблемы с именами файлов, а по тому, что мне не редко бывают нужны различные unix-утилиты на уровне проекта и тащить их в Windows - весьма сомнительное удовольствие (особенно с учётом того, что далеко не все под Windows они есть)...
    Ответ написан
    Комментировать
  • Как вывести список всех своих друзей в ВК Python?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Подскажите, как с помощью Python, получить список всех своих друзей в ВК
    Обычно взаимодействие с ВК осуществляют с помощью VK API, а потом уже Python или не Python - особого значения не имеет.

    Касательно конкретно Python'a + VK API - в поисковике вбиваете "vk api python" - там масса статей, думаю смысла перечислять их все особого нет?

    Конкретно по поводу друзей пользователя: клац
    Ответ написан
    3 комментария
  • Как убрать слеш в конце ссылки (html) и не поломать дизайн сайта?

    Wolfnsex
    @Wolfnsex Куратор тега CSS
    Если не хочешь быть первым - не вставай в очередь!
    Как это можно исправить? В коде написать что-то?
    Есть подозрение, что нужно:
    а) Удалить в коде все ведущие .. в путях (к картинкам, скриптам и пр. штукам, которые у Вас на первой картинке не прогрузились)
    б) Заменить относительные пути (т.е. начинающиеся с ..) на абсолютные (т.е. начинающиеся с /)
    Ответ написан
    9 комментариев
  • Уведомление о том, что пользователь не зашел ВК?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    В общем, мне нужен способ отправить мне уведомление, если боты не авторизовались в ВК до 7 утра.
    Я думаю выглядеть это будет примерно так:
    0. Открываем вот эту страницу, находим там поле "online", оно отвечает за то, онлайн пользователь или нет
    1. Запускаем по крону скрипт, в 7:00 утра, который проверяет, онлайн пользователь или нет
    2. Если нет - скрипт отправляет SMS/Email/etc куда следует

    Или Вы не об этом?
    Ответ написан
    3 комментария
  • PHP Simple HTML DOM Parser. Как исключить из поиска элемент с классом?

    Wolfnsex
    @Wolfnsex Куратор тега PHP
    Если не хочешь быть первым - не вставай в очередь!
    Не припоминаю такой конструкции в CSS-селекторах, как !=, но помню что есть вот такая конструкция. Не знаю поддерживает ли PHP Simple HTML DOM Parser (этот момент Вам лучше уточнить в документации к нему), но чисто логически - Вам нужен такой селектор.
    Ответ написан
  • Почему flex по-разному реагирует на текст и цифры?

    Wolfnsex
    @Wolfnsex Куратор тега CSS
    Если не хочешь быть первым - не вставай в очередь!
    А если поменять эти цифры на текст типа lorem, то элемент растянется?
    Текст "типа lorem" - тоже без пробелов?

    P.S. Вы бы второй пример сразу привели, с текстом "типа lorem", с одинаковым количеством спец. символов влияющих на разрыв слов, перенос строк и т.д., в частности я говорю про - пробелы, символы табуляции, переносы строки типа "\n", промежуточные теги, типа <br/> и т.п.
    Ответ написан
    3 комментария
  • Какую бд лучше выбрать для создания rest api?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    то половина статей как сделать связку node + meteor + mongobd
    На самом деле, всё довольно просто. Node, meteor, MongoDB и т.п. объединяет один очень важный факт, под названием "JavaScript". А авторов подобных статей объединяет некая "любовь" к этому факту.
    Ответ написан
    Комментировать
  • Какую платежную систему выбрать для данного проекта?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    что что им помешает просто заморозить счет при такой же отмазке
    Отсутствие юр. лица - не является статьёй или нарушением закона, в результате которого могут заморозить Ваш счёт. К тому же, что Вы там боитесь потерять, счёт с 200р. на хостинг?
    Ответ написан
  • Можно ли в своём портфолио указать работы сделанные по заказу веб-студии?

    Wolfnsex
    @Wolfnsex Куратор тега Веб-разработка
    Если не хочешь быть первым - не вставай в очередь!
    или я не имею на это право?
    Право на что? Давать ссылки на сайт студии или ссылки на какие-то другие сайты? Не представляю, какой законодательный акт это может ограничивать...
    Ответ написан
    Комментировать
  • Как добавлять в разметку svg, чтобы он не загромождал разметку?

    Wolfnsex
    @Wolfnsex Куратор тега HTML
    Если не хочешь быть первым - не вставай в очередь!
    Как вы работаете с свг?

    Вариантов тут два:
    1. Терпеть "как есть"
    2. Вставлять файлы через какой-нибудь шаблонизатор или с помощью языка/интерпретатора, который с этими функциями справляется, например как-то так:
    <?= file_get_content(__FILE__.'/img/svg/image1.svg'); ?>
    *пример исключительно условный.
    Ответ написан
    Комментировать
  • Можно ли использовать такую структуру таблиц?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Здравствуйте.
    В проекте есть таблица posts - это таблица с постами из разных социальных сетей.


    Здравствуйте. С учётом того, что в тегах Вы указали MySQL, подозреваю, что используете Вы именно эту БД... А у этой БД (как и у многих других) есть её характерные особенности. В частности, MySQL довольно быстро обрабатывает таблицы с большим количеством записей (вертикально) и начинает прилично так проседать, когда кол-во столбцов (или того хуже, объём данных в этих столбцах) растёт (горизонтально). Это из личного опыта, и на возведение в статус аксиомы - не претендует

    А так же по той причине, на основании следующего:
    1. Насколько я понимаю, данные у Вас из разных соц. сетей - по определению разные (в смысле, какая-то их часть), но их фактическое количество (кол-во соц. сетей или источников данных) - фиксированное
    1.1 Даже частично одинаковые данные из разных соц. сетей могут иметь разный формат, например пост из твиттера не может быть длинее N символов (не помню сколько... 140?), а пост в ФейсБуке - может быть куда больше... и т.д.
    2. При добавлении новой соц. сети - у Вас добавляет не просто какое-то "радомное свойство к товару", типа: "была газовая плита, у нее была ширина и длина, сегодня померили - нужно теперь высоту добавить", с введением новой соц. сети в код приложения добавляется какой-то довольно "толстый" модуль, для обработки конкретно этой соц. сети

    С учётом выше сказанного, я бы делал для каждой соц. сети, отдельную таблицу, так как:
    1. Кол-во параметров для каждой соц. сети не меняется (или меняется крайне редко)
    2. Таким образом одна таблица будет меньше занимать на диске, т.е. в некотором смысле - это будет сегментирование (хоть и в несколько упрощенной и "вынужденной", а не осознанной форме), что в общей сложности повышает производительность
    3. Кол-во "дыр" в данных у Вас будет гораздо меньше, а с учётом того, что постов там у Вас тысячи, а соц. сете не 2 и не 3, а уже 14 и это не предел...

    P.S.
    Как такой инсёрт сделать в две таблицы вместо одной?
    Сделать два инсёрта. Если для Вас очень принципиально время вставки и оно гораздо важнее времени получения данных из таблицы (и два инсёрта - гораздо медленнее одного) - используйте соотв. тип табиц, кажется он называется "ARCHIVE" в MySQL.

    Как такой инсёрт сделать в две таблицы вместо одной?
    Второй вариант - заменить MySQL на PostgreSQL и хорошенько его изучить. Там есть "наследование" таблиц и другие механизмы, которые позволяет Вам делать инсерт в одну таблицу, а движок сам будет распихивать "кого куда", при этом проблема которую Вы описываете изначально, при правильном подходе - будет решена (сама собой) раньше, чем успеет начаться.
    Ответ написан
    Комментировать