• Laravel routes, что за синтаксис (uses ..., as ...)?

    SerafimArts
    @SerafimArts
    Senior Notepad Reader
    В документации: https://laravel.com/docs/5.2/routing (в новой этого уже нет, а значит функционал может быть задепрекейчен).
    Ответ написан
    2 комментария
  • Есть ли официальная документация по JavaScript?

    Stalker_RED
    @Stalker_RED
    Javascript - это одна из реализаций ECMA-262. Если вам нужно именно "официально-стандартно" - вам именно сюда.
    Обратите внимание, это девятая редакция, которая вышла в июле. В следующем году скорее всего выйдет новая редакция. Ну и в этом СТАНДАРТЕ вы не найдете всяких новых экспериментальных штук. Экспериментальные штуки обычно описаны в черновиках.

    BOM и DOM - это на самом деле не часть javascript, это API браузеров.

    В 99% случаев вам будет удобнее всего ориентироваться на MDN, там все неплохо структурировано, и поддерживается в довольно актуальном состоянии.
    Ответ написан
    1 комментарий
  • Какой pet проект создать, чтобы выделиться?

    yarkov
    @yarkov
    Помог ответ? Отметь решением.
    Сделай генератор идей для пет проектов ))
    Ответ написан
    Комментировать
  • Какой pet проект создать, чтобы выделиться?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Мнение диванного эксперта:
    А вы возьмите один свой пет-проект и сделайте пет-проекты по его расширению и углублению. Ну там добавить многозадачность, микросервисность, распределенность, обновление контейнеров сине-зеленое, непрерывное развертывание, бэкапирование всякое, безопасность, логирование, highload, панели управления всем этим, мониторинги, модный ИИ туда прикрутите, в общем ни в чем себе не отказывайте :))
    Ответ написан
    6 комментариев
  • Какой pet проект создать, чтобы выделиться?

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

    Если же говорить про что могло бы быть максимально эффективным - запили что то из области своего будущего работодателя.
    Ответ написан
    Комментировать
  • Какой pet проект создать, чтобы выделиться?

    saboteur_kiev
    @saboteur_kiev Куратор тега Карьера в IT
    software engineer
    Pet проект это не тестовый проект для портфолио.
    Пет проект делается для себя, а потом по случаю добавляется в портфолио, а не создается исключительно для того, чтобы положить его в портфолио.

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

    @Barmunk
    Есть специальный пакет для экспорта большого объема, можете попробовать его.

    https://github.com/box/spout
    Spout is a PHP library to read and write spreadsheet files (CSV, XLSX and ODS), in a fast and scalable way. Contrary to other file readers or writers, it is capable of processing very large files while keeping the memory usage really low (less than 3MB).
    Ответ написан
    Комментировать
  • Как экспортировать большие данные в excel?

    mashletov
    @mashletov
    Math.random()
    Не слушай советчиков с PHPExcel. Он уже при 5-10к строк начнет потреблять 100+ мб оперативы.
    Кандидат от народа: box/spout. Пишет в файл на лету. Минус: почти полное отсутствие форматирования. Не умеет делать ни ширину столбцов, ни выравнивание по краю... Только шрифт / бордеры.
    Ответ написан
    Комментировать
  • За что отвечает require-dev в Composer?

    @harmoxyne
    Отвечает за те зависимости, которые необходимы только для dev-окружения.
    К примеру, Вы точно знаете, что библиотека phpunit нужна для разработки, а на проде будет лишней, тогда phpunit попадает в require-dev.
    Когда выполняется простой
    composer install
    устанавливаются и dev-зависимости.
    Когда выполняется
    composer install --no-dev
    устанавливаются только те зависимости, что в основном блоке require.

    Источник
    Ответ написан
    Комментировать
  • Стоит ли доверять этому ресурсу в изучении React?

    JamesHatfield
    @JamesHatfield
    Front-end developer
    Прошел 40 уроков React "путь самурая". Очень доступно автор доносит материал, разжевывает и раскладывает по полочкам. Плюс автор курса сам по себе очень позитивный чувак и заряжает этой энергией. Но на документацию забивать не стоит. Документация + этот курс - идеальное сочетание как по мне!!
    Ответ написан
    Комментировать
  • Как логически составить план чтения книг по разработке?

    ThePyzhov
    @ThePyzhov
    iOS Ninja
    Как логически составить план чтения книг по разработке?

    В каком порядке читать книги: "Портрет Дориана Грея", "Тихий Дон" и "Гарри Поттер"?

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

    Универсального списка тут нет. Все зависит исключительно от того что вам нужно в данный момент и чем вы уже владеете.
    Ответ написан
    Комментировать
  • Как подружиться c SMTP от Яндекса?

    @kulakovfoto
    Яндекс не принимает обычный пароль от почты для сторонних приложений.
    Необходимо создать отдельный пароль для приложения.
    Зайти в web-интерфейс. Настройки->Безопасность->Включите и создайте пароли приложений.
    Ответ написан
    1 комментарий
  • Как работать с websocket в php без библиотек?

    Sanasol
    @Sanasol Куратор тега PHP
    нельзя просто так взять и загуглить ошибку
    Как работать с websocket в php без библиотек?

    если в кратце, то никак.

    в PHP нет реализации протокола websocket из коробки.

    Библиотеки как раз нужны потому что в них и описан весь websocket причем с поддержкой старых/разных версий для разных браузеров.

    И это вообще не fsockopen или socket_create. Эти функции вообще о другом и ничего общего с вебсокетом не имеют. Точнее это низкоуровневые функции для создания любого сервера, но они сами по себе ничего не умеют из коробки на них как вебсокет можно реализовать так и http сервер например.

    https://github.com/ratchetphp/RFC6455/blob/master/...
    Как-то так выглядит вебсокет на "чистом похапе".
    Без этого работать не будет ничего.
    Ответ написан
    Комментировать
  • Как работать с websocket в php без библиотек?

    @xfg
    Прочитать соответствующий RFC https://tools.ietf.org/html/rfc6455 чтобы понять, как происходит рукопожатие и какие байты в переданном сообщении за что отвечают. После этого будет понятно как написать реализацию. Я досконально уже не помню, но фактически от клиента приходит обычный http запрос с определенными заголовками, сервер разбирает этот запрос и если всё ок, то сохраняет открытое соединение в массив, если нет, то отправляет соответствующий ответ и закрывает соединение. Дальше по открытому соединению начинает сыпаться поток байтов от клиента их нужно разбирать, чтобы понять длину сообщения, сами данные переданные в фрейме, закончился фрейм или еще нет и тому подобное. Обратно также кодировать данные в поток байтов и отправлять по открытому соединению. Каждый байт в переданном фрейме несет определенный смысл. Обо всем этом подробно написано в RFC, но на английском. Вообще это хорошо примерно понимать как работает, но глупо писать такую низкоуровневую реализацию, когда есть готовые. Такие вещи развивают и поддерживают годами. Вы же не пишите HTTP серверы, а берете готовые вроде nginx и тому подобное.

    В каком месте можно полученные данные подготовить к записи в бд.

    Как сделать, что бы на стороне клиента, один websocket отвечал за сообщения, другой за статьи. (Или за эти два действия отвечает один websocket, тогда как мне на сервере это различать).

    Вебсокет это низкоуровневая штука, для передачи потока байтов от клиента на сервер, в отличии например от HTTP, где есть заголовки и тело сообщения. Поверх вебсокета нужно делать еще один протокол или самописный или выбрать один из готовых. Это проще говоря, то как выглядят ваши фреймы (сообщения), которые вы отправляете с клиента на сервер и назад. Например клиент может отправлять такой фрейм:
    ["id", "controller/action", {param1: value1, param2: value2}]

    в ответ получать
    ["id", "OK"]
    если запрос был обработан успешно или
    ["id", "ERR", {error: "action not found"}]
    если произошла ошибка. По переданному id в массиве, можно понимать, к какому запросу относится ответ.
    Для уведомлений (событий) сервер может отправлять клиентам что-то такое
    ["user_added", {user: {...}}]
    и т.д. Этот протокол необходимо придумать самому или выбрать из готовых (популярных пока нет) и написать его реализацию (клиентскую и серверную часть) или опять же взять уже готовую.

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

    Но это уже всё должно быть, просто возьми real-time фреймворк. Там за тебя написали и websocket сервер и протокол поверх него и экшены уже есть. Всё низкоуровневое уже готово. Бери и пиши приложение. В nodejs самый популярный это например https://github.com/socketio/socket.io, а в php я не знаю, но уверен, что тоже есть что-то популярное.

    Своё написать не получится, без опыта и без попыток сделать приложение на чем-то готовом. Нужно как минимум прочитать RFC и посмотреть реализации других разработчиков. Для этого нужно быть кем-то больше, чем "программистом сайтов".
    Ответ написан
    1 комментарий
  • Фрейморк для REST API, на замену Silex?

    glaphire
    @glaphire Куратор тега PHP
    PHP developer
    На laravel будет удобнее, на symfony придется писать половину с нуля или использовать api platform, в которой черт ногу сломит)
    Ответ написан
    1 комментарий
  • Изучение Laravel, с чего начать?

    Sinersis
    @Sinersis
    Специальст широкого профиля
    Ну наверное я щас напишу еще раз то что многие уже написали:
    1. Обязательно вам нужна голова на плечах.
    2. Желание прочитать тонну документации с примерами по PHP
    3. Большая кружка для кофе\чая (нужное подчеркнуть)
    4. Освежитель для мозгов
    5. Умение пользоваться Google.com
    6. Cайт с документацией по Laravel
    7. Готовность к выполнению кучи рутинных задач для набивания руки.
    8. ТЕРПЕНИЕ! ТЕРПЕНИЕ! ТЕРПЕНИЕ! ЗАИНТЕРЕСОВАННОСТЬ!
    Ответ написан
    1 комментарий
  • Как можно зарабатывать с помощью разработки?

    Robur
    @Robur
    Знаю больше чем это необходимо
    Хотите работать на себя, быть независимым, не работать на фрилансе и на дядю и хорошо зарабатывать, но не знаете что для этого надо?

    У меня есть для вас ответ!
    Для этого надо научится делать бизнес. Именно пойти и учиться. так же как и всему остальному. Клиенты, рынок, маркетинг, доход-расход, риски, планирование, вот это вот все. К разработке это не имеет отношения, и тостер не тот ресурс где этому научат.
    Это все скучно, муторно и не хочется тратить свою жизнь на это? Добро пожаловать в офис/фриланс где другие дяди уже потратили свои годы за тебя, тянут всю эту скучную тягомотину сами и оставляют тебе только интересные задачки на программирование.

    Можно еще попытаться выиграть в лотерею - либо покупая билеты спортлото, либо делая какой-то свой сервис/приложения наобум и пытаясь их кому-то продать. В целом шансы плюс минус одинаковые.
    Ответ написан
    Комментировать
  • В чем основные отличия mySQL от Postgre?

    batyrmastyr
    @batyrmastyr
    Из простых преимуществ постгреса - многие запросы в нём отрабатывают шустрее, можно весьма гибко прописать ограничения на данные (если в поле "а" что-то есть, то в поле "б" может быть только "с"), даже крупному магазину может хватить настроек по-умолчанию при которых база довольствуется смешным объёмом памяти.

    Из недостатков по сравнению с Mysql - нет множеств (заменяется массивом перечислений), большая строгость работы (число или перечисление нельзя взять и сравнить со строкой "5 = '5'", нужно привести их к одному типу "5 = '5'::int" или " 5::text = '5'5 ", а ваша обёртка над базой может быть не готова к такому).

    В контексте nosql баз данных например вижу преимущества в быстродействии, например, причем на порядок.

    Увы, это преимущество скорее всего окажется мифом - сейчас как раз потихоньку выпиливаем MongoDB.
    Если говорить про MongoDB, то в моих задачах он работал либо не быстрее мускуля или постгреса при поиске, либо в разы (в 2 - 50 раз) медленнее при записи. При этом Монга жрала 1,5 гига памяти, мускуль - 300 Мб, а постгрес - меньше 15 Мб (да, меньше жалких пятнадцати мегабайт).
    Ответ написан
    3 комментария
  • В чем основные отличия mySQL от Postgre?

    Insolita
    @Insolita
    Отчаянная домохозяйка
    postgres - массивы, отдельное управление последовательностями (в mysql только одно инкрементное поле на таблицу, в postgres на таблицу можно несколько последовательностей, и одну на несколько таблиц. причем с настраиваемым шагом), оконные фукнции для подсчета статистики https://habrahabr.ru/post/268983/
    лёгкое создание полнотекстового поиска без доп. движков типа sphinx и elasticsearch, которого вполне хватает для многих кейсов https://eax.me/postgresql-full-text-search/ , materialized view, наследование таблиц.
    Вот более полная таблица фич
    https://www.postgresql.org/about/featurematrix/
    Но штука в том, что фичи далеко не всегда и везде нужны, поэтому mysql хватает с головой для многих задач
    Ответ написан
    Комментировать
  • В чем основные отличия mySQL от Postgre?

    alekciy
    @alekciy
    Вёбных дел мастер
    Использую обе РСУБД. Предпочитаю Postgresql, хотя конечно начинал с MySQL. Из того, что на практике приводит к такому предпочтению:
    1) Отсутствие проблем на по сути пустом месте. Из последнего было, в одной базе есть таблицы с большим количеством текстовых полей. При вставке в одно из них чуть меньше 200 символов он отказывался ссылаясь на то, что переводите на динамические. И я значит должен начать курить тему движков мускула и выяснять, что мне оказывается нужна Barracuda. При той же InnoDb. Хочется спросить такого черта.
    Или вот еще вспомнил. При попытке записи в поле данных, больше чем это возможно для данной колонки он делает запись тупо обрезав лишнее. И проблему могут не заметить очень долго вплоть до момента когда подниматься из бэкапа поздно, там все уже битое.
    Или вот взять и сменить могут дефолтные значение переменных в рамках минорной версии. База после накатки апдейтов и ребута может просто не подняться. На хабре даже была статься по этому поводу.
    В общем множество подобных ситуаций после которых так и хочется воскликнуть "какого черта?!". Со слоном я не помню ни одной такой ситуации.
    2) RETURN во вставках/обновлениях. Можно получить в ответе любое поле такого запроса. И ни каких тебе танцев с LastInsertId.
    3) В последних версиях есть UPSERT которого очень не хватало.
    4) В целом более строгий подход и нет ощущение бардака.
    5) После запуска Postgres Pro появилась полностью руссифицированная документация. Помогает вкатиться в тему новичкам.

    Из минусов некоторое время было отсутствие адекватного UI клиента. Но после того, как стал использовать PhpStorm эта проблема была закрыта.
    Ответ написан
    1 комментарий