Исходные данные: пишу на PHP, фреймворк Laravel юзаю, пишу в основном простые каталоги/корпоративные сайты/етс, несложные сайты по реализации на самом деле. Т.е пока такого уровня сайты это мой максимум, даже тут немного лажаю и долго пилю, есть куда расти в этом уровне тоже. На самом деле вариантов что делать дальше масса: как минимум можно вкатиться в курсы Елисеева по ларке, начать осваивать все что связано с окружением/деплоем, повышать качество кода, научиться в архитектуру (писать свои микрофреймворки из тех же PSR интерфейсов/zend или symfony либ, я пытался но получилось так себе), но чет не то. Наверное от того что задачи не требуют такого оверхед инструментария; по-хорошему тот тип сайтов, который я пишу надо бы на каком-нибудь RAD фреймворке вроде Yii2 писать или даже на CMSках, но мне просто удобнее на ларавеле. В общем, дайте советы для тех, кто уже вроде не новичок, но какие-то пробелы имеют. Интересно мнение именно миддлов; какого типа проекты стоит писать, в какую сторону копать, и так далее. Понимаю что зависит ответ от того, куда я собираюсь идти, но допустим это аутсорс контора или веб-студия продвинутая.
>>1422899 (OP)Изучить жаву, найти нормальную работу, сидеть на этой работе до седых мудей и копить бабло на шаурмичную или зоомагазин какой-нибудь.
>>1422899 (OP)Подскажи, что лучше изучать по ларке, щас сам учу ларку, хотя бы простые проекты бы начать пилить, вроде и пилю чёто, но всё хуйня, знаний не хватает даже не более менее простейшие проекты, скажи что изучал, как практиковался, чтобы я хотя бы джуном или его личинкой стать мог?
ларавел топ, юии уже говно мамонта и только по снг и китаю которуется, как и все говно впринципе, например битрикс который нахуй никому не вперся
>>1439801Симфони - это не только ценный мех, но и еще охуительный набор пакетов на все случаи жизни, которые овердохуя где используются, в том же ларавеле, например.Вообще, в пыхе прекрасный менеджер зависимостей, аж сам в ахуе.
>>1444334>Вообще, в пыхе прекрасный менеджер зависимостей, аж сам в ахуе. Композер в смысле? А чем он так хорош?
>>1450106Наверное тем, что он просто есть. В пыхе кругом ад и сотона, а тут внезапно вполне сносный package manager.
>>1422899 (OP)>простые каталоги/корпоративные сайты/етсЭто в принципе потолок для PHP. Хочешь заниматься чем-то другим - перекатывайся в другие языки.
>>1422899 (OP)> но какие-то пробелы имеютКакие именно пробелы?Архитектура ПО, Базы данных, Алгоритмы, Паттерны ООП, Системы очередей, Системы контроля версий, Деплой, Контейнеризация?
>>1450106>А чем он так хорош?Ну давай разберем тобою написанное.1. Он ОДИН. Возьмем, к примеру, C++. Или Java. Какой там менеджер зависимостей? Верно, или никакой или кучи конкурирующей васянской хуиты и собственных менеджеров в фреймворках. У пыха один единственный общепринятый менеджер зависимостей, что значительно упрощает жизнь всему сообществу, ибо не возникает ситуаций, когда какая-то зависимость есть только в каком-то отдельном менеджере.2. Он хорош и выполняет 97% всех возможных задач. Это говно просто работает и работает хорошо.
>>1470927>менеджер зависимостейАХАХАХАХАХАХАХАХАХАХАХАух, бляпхп=шник и так не знает, как у него что работает, давай еще менеджеров ебанем, чтобы еще сильнее ничего не знать>рррряяяяя, maven - васянохуита, то ли дело в ПЫХЕ!Пиздец, либо ты троллишь, либо пхпшники совсем ебанутые
>>1468758Мимо другой анонДеплой и контейнеризация. Насколько глубоко докерозалупу стоит знать? Ну понятно, что чем больше, тем лучше. но это девопсовская обязанность. Т.е. создавать докерфайл умею, собирать образ, разворачивать, подчищать. Но в целом все. Что еще стоит знать?Так же интересует окончательный ответ. Насколько нужно бд в докере содержать, вместо реального сервера?
>>1472867ДевОпская то да, но по факту везде где я работал пришлось так или иначе сталкиваться с деплоем и/или контейнерами и курить доки по ним.
Я бы посоветовал не заострять внимание только на фреймворках и сайтах, обратить внимание на то что довольно сложные бэкенды пишутся на php.Да, возможно, Java подошла бы лучше для большинства таких проектов, но когда проект только стартует и первые версии были написаны на пыхе, т.к. это дешевле, никто не переписывает их без крайней необходимости.Как вызов себе можешь попробывать написать приложение которое не зависит от фреймворка. Чтобы ты мог запустить юнит тесты как если бы фреймворка не было вовсе. Обрати внимание на паттерны, DDD и clean architecture.В реале конечно это все не соблюдается в большинстве проектов, но неплохо уметь оценивать последствия нарушения этого.Учись работать с техническим долгом и не бояться его (т.е. осознанно нарушать солиды и т.п. когда это действительно нужно для проекта)Грамотное логирование, мониторинг, денормализция таблиц тоже важные навыки.Еще одно супер умение - более менее точная оценка задач.
Интересно в %любой мухосранск средней величины% потому столько вакансий на пыхе, что никто не хочет учить "не тру" пыху? Вы что учить php в 2к19 это же зашквар. Лучше выучу go или же python, напишу несколько pet проектов и узнаю что я никому не нужен. Заходишь на hh:Go/python 0 вакансий. PHP 40 вакансий. На некоторые минимальные требования уровня hello world.
удаляйся от фреймворков и иди в паттерны и алгоритмывообще лучше заниматься темами, которые являются глобальными в разработке, то есть используются во всех языках на всех фреймворках (да-да, алгоритмы и паттерны)еще дядюшка Боб говорил, что хорошая архитектура не должна зависеть от второстепенных вещей типа бд, фреймворка, типа сервера и прочее-прочее.как вариант изучать внутренности (выше видел подобные ответы), да, то есть ковырять фреймворки, изучать особенности БД и прочее, это поможет, когда придется оптимизировать программу или решить задачу наиболее лучшим способом
>>1465489почему руби?сам язык не имеет популярности, разве что из-за рора и сасса (и то который на фронте и хз используется ли вообще сейчас)рор потихоньку угасает, насколько я знаю сам разработчик то ли руби, то ли самого рора в нем разочаровался (хотел пилить другой фреймворк но потекло по штанине)причем, большинство работы на руби (рор) это считай поддержка легаси, новых проектов на нем все меньше и меньшене смотря на хейт пхп, тут все зависит от разработчика (как и везде и всегда лол)сам язык заточен под веб, имеет много инструментов для удобной работы с ним, да и фреймворки, та же лара, мега привлекательная вещь с которой очень удобно и приятно работать
>>1538258>причем, большинство работы на руби (рор) это считай поддержка легаси, новых проектов на нем все меньше и меньшеДа ну? Назови лучший стэк для быстрого накатывания апишки/админки/фулстэк для прототипирования стартапа под нехайлоад?
>>1538254Хуйня, паттерны нет смысла изучить на раннем этапе. Надо наоборот изучать стэк и пытаться клепать гавно. Потом прийти к пониманию что ты клепаешь гавно и учиться писать годноту
>>1538749мне кажется в программировании (да и в айти вообще) нет такого понятия как "лучший", ну да ладнону как бы лара, почему нет?Платформа для апишки с нуля уже есть, разрабатывать начинаешь сразу жеДа, админки там нет, как, например, у питона (джанго) того же, но не проблема ее написать под свои нуждыФулстэк тоже у лары уже накатан, vue идет вместе с ней + конфиги для вэбпака (webpack-mix)
>>1538751согласен, если мы говорим об ОО-языках, то сначала придется повозиться с ООП как минимум, базовыми понятиями, принципами (тот же солид), а уже потом паттерны, без заранее накопленным знаний и опыта паттерны не поймешь, а тем более не применишь
>>1422899 (OP)>Застой в развитии, как дальше развиваться трейни/джуниору? /php/>Интересно мнение именно миддловА милды на PHP вообще бывают?Понимаешь, уровень IQ влияет на то насколько быстро ты можешь освоить простую работу, но не на то как качественно ты её можешь выполнять.Другими словами, неважно какой ты гений, подавать гамбургеры с коллой в макдаке ты будешь так же как и дебил с айкью около 100. А может и хуже, потому что лишние мозги тут только мешают.У разносчика пиццы нет никакого карьерного роста как такового.В ойти не так много направления позволяющих тебе карьерно расти, и сам этот рост происходит у одного из 20-50ти.
>>1539024сама айти карьера позволяет расти как таковая, не то, что ее направлениячто по поводу направлений, так там ты не исчерпаешь всю инфу и за десятки лет, будь то программирования, безопасность, сети, администрирование и прочееда, кстати, эти направления комбинируются, так что у айти-спеца всегда есть что изучать и куда стремиться, там все ограничивается лишь фантазией человекану а расти будет тот, у кого есть желание, так как возможность есть всегда
>>1539035>сама айти карьера позволяет расти как таковая, не то, что ее направленияПод ростом я понимаю две вещи.1. Деньги.2. Власть.Айти карьера позволяет бесконечно тратить личное время на изучение тонн материала только чтобы СОХРАНЯТЬ ТЕКУЩИЙ УРОВЕНЬ ЗАРПЛАТЫ.
>>1539050>Под ростом я понимаю две вещи.>1. Деньги.>2. Власть.Если ты додик без амбиций, то тебе ни одна сфера не даст этого.
>>1539050не согласенсейчас и неквалифицированных "спецов" нанимают на довольно неплохие зп, знаю не по наслышкеконечно можно бесконечно тратить личное время на изучение тонн материала (в идеале, это должно нравится и приносить хоть какое-то удовлетворение), но поднять себе ЗП посредством этого не составляет трудабанально возьму те же алгоритмы и паттерныэто ведь не секретные знания и не ядерная физика, это вполне себе стандартные знания, причем их пооткрывали уже очень-очень давночто мешает разработчику, который работает в рядовой компании и пилит рядовые проекты (админки, СRM, просто сайтики) выучить ООП, паттерны, принципы построения компонентов и в общем хорошей архитектуры и идти выше по карьере? (при этом текущей компании будет похуй, что он там что-то знает, так как на текущей позиции он применить эти знания не может)Взять и найти вакансию, где эти знания востребованы, в большинстве случаев за такие знания (+ опыт желательно) будут и платить больше, ну и уважать конечно (это к слову о власти)
>>1539110или еще прощеищешь вакансию желаемую, смотришь на требования, изучаешь их и пробуешь туда устроиться
>>1539144это даже троллингом назвать сложно, в чем смысл этих сообщений?)лучше бы что-нить против сказал, а то мне реально сложно представить ситуацию, когда нужно что-то дополнительно более-менее серьезное изучать для того, чтобы остаться на работеа, ну и в процессе работы ты же тоже обучаешься, так что оставаться на текущем уровне зп вообще не проблема, если тебя кинут на новый проект, то ты там просто обучишься тому, чего не знаешь, в процессе работы
а зачем тебе курсы некоего Елисеева (кинь ссылку на эти курсы)?что ты надеешься получить по прохождению?Вообще есть два пути прокачки: учить технологии. тогда глянь эту ссылку https://github.com/kamranahmedse/developer-roadmap#back-end-roadmap учи теорию. паттерны проектирования.или классика от банды четырех - https://www.amazon.com/Design-Patterns-Object-Oriented-Addison-Wesley-Professional-ebook/dp/B000SEIBB8или этот вариант - https://refactoring.guru/ru/design-patternsкнига (https://refactoring.guru/ru/design-patterns/book) рефакторинг - https://www.litmir.me/bd/?b=256274&p=1 эффективная работа с legacy (устаревшим) кодом - https://www.amazon.com/Working-Effectively-Legacy-Michael-Feathers/dp/0131177052последние два особенно полезны будут аутсорсеру.еще для общего развития стоит изучить юнит тесты - https://phpunit.readthedocs.io/en/8.5/тем более что ларавель идёт с встроенными загатовками для тестирования - https://laravel.com/docs/6.x/testingно для изучения лучше поднять отдельный проект, особенно базу данных)
>>1563185сейчас это скорее набор компонентов, чем фреймворк. его, имхо, имеет смысл использовать для очень специфичных штук. но даже в таком случае тебе, почти наверняка подойдет laravel. ну или lumen, на крайняк.