Также, у нас есть задачи которые позволят тебе изучить или подтянуть до нормального уровня знания JS/HTML/CSS/SQL. Решай их параллельно с задачами выше.
- скачать учебник: зайди на https://github.com/codedokode/phpbook, нажми зеленую кнопку Code -> Download ZIP, распакуй на рабочий стол и открой index.html - что будут спрашивать на собеседовании, если 0 опыта - будут гонять по теории, по официальному мануалу PHP, давать дурацкие задачки на переворачивание строк, гонять по SQL (транзакции, внешние ключи, напиши запрос), по JS (как сделать анимацию при нажатии кнопки), ну погугли, не ленись - сколько времени надо изучать все это? - все зависит от тебя, в районе 10-15 месяцев
Как вкатиться в PHP в 2025? Шапка выше порядком устарела. На данный момент лучший способ вкатиться пройти курсы Хекселт. Проходить можно не отваливая 150к сразу за групповое обучение, которое не нужно, а обучаясь по подписке за 4к/месяц.
>>3392549 Там речь была про найм на гошника. Сейчас в РФ пхп в связке с го идёт нередко потому что кабан захотел го. И речь была про додиусов которые поработали 9 лет на пхп и 1 год на го и пишут что у них 10 лет опыта го
Как лучше всего прокинуть конфиг в обёрнутый класс?
Есть класс для работы с сторонним api, который принимает конфиг. Он завёрнут в адаптер - Adapter( Api( config ) )
Использую (учу) симфони
Вижу такие вары 1. собрать в контроллере всё вручную и не выёбываться 2. собрать конфиг в контроллере, прибиндить его в контейнер и взять адаптер из контейнера, куда уже подставится ранее собранный конфиг (так ведь?) 3. добавить адаптеру свой конфиг, чтобы он из него собрал конфиг api класса и сам класс. Плюс, как мне кажется, в том что тут контроллеру похуй на api класс и он зависит только от адаптера, а адаптер уже там пидорится сам с этой апишкой
Нужен максимально ентерпрайз-ориентированный патернообдроченный ответ, пожалуйста
>>3392813 1) создай бандл для своего класса апи 2) создай конфиг для бандла 3) опционално можешь сделать пецепт для флекса чтобы он yml файл создавал с дефолтным конфигом при установке
>>3392820 Ну и соответственно бандл должен в контейнер добавлять твой класс сервис, а ты уже просто в акшен должен пропихивать как зависимость этот сервис
>>3392824 Если у тебя несколько апи и есть адаптер то можешь либо в одном бандле с адаптером из все реализовать либо разбить на отдельные бандлы и как зависимости черезкомпозер ставить.
Знает кто-нибудь зачем в htmlspecialchars double_encode по умолчанию стоит в true? В чем прикол снова кодировать html-сущности в html-сущности? Спросил чатгпт, он несет какую-то хрень, которая оказывается несостоятельной на практике. Я создал шаблон в Laravel, вставил сырой php код с htmlspecialchars и передал первым параметром строку, в которой "<" и прочее уже закодировано в соответствующие html-сущности, а double_encode установил в false. И что я получил? Строку без html-сущностей, но без выполнения js кода. В чем прикол тогда? Если прикола нет, почему htmlspecialchars() по умолчанию ставит double_encode в true и Laravel тоже (внутри хелпера e)?
>>3392885 Симфони. Сам фреймврок намного лучше написан, в ларавеле куча копромагии. Но по симфе меньше учебных материалов и меньше вакансий, а порог входа выше.
>>3393206 >Но по симфе меньше учебных материалов и меньше вакансий, а порог входа выше о, да.... залез после трех лет с ларой на аутсорсе на продукт на симфе.... я как будто не работал никогда, синдром самозванца давит, привык магии, а тут почти все руками.
>>3392878 >>3392820 Это для статики, а мне нужно чтобы в рантайме некоторые вещи в конфиг прописывались.
Думаю уберу из конструктора конфиг (или оставлю минимальную статику) и добавлю сетеры для установки всего остального. Тогда контейнер его сможет создать, а остальное будет ставится через адаптер такими же сетерами.
Кто перекатился в другие языки? Запилите стори пж Работаю на сейчас с ларой и думаю перекатываться в го либо в джаву, но хз насколько это реально с нынешним рынком
Вопрос по Synfony DI контейнеру. А что если мне нужно создать объект не сразу, а отложенно? Вот что я имею ввиду.
Допустим, у нас есть Adapter. Как известно, в конструктор адаптера необходимо передать объект Adaptee. В свою очередь, чтобы создать объект Adaptee, нам необходимо передать в него объект конфигурации Config. Но объект конфигурации сразу создать нельзя, нам сначала в рантайме нужно получить объект Configurator, вызвать у него определённые методы, передать в этим методы некоторые значения, а уже после этого последует вызов метода у Адаптера и только тогда, когда Адаптер будет использован, контейнер должен увидеть что объект Адаптера ещё не создан, контейнер возьмёт готовый объект конфигуратора, вызовет у него метод build() который вернёт объект Config, затем этот конфиг передаст в конструктор Adaptee, а затем Adaptee в Адаптер.
Отличный вопрос про отложенное создание объектов (lazy initialization) в контексте контейнера зависимостей Symfony! Давайте разберёмся, как это можно реализовать.
В Symfony DI-контейнере есть несколько подходов к отложенному созданию объектов, и ваш случай — это классический пример, когда нужно управлять зависимостями, которые становятся доступны только в рантайме. Вот пошаговый разбор и решение:
двач я самый большой лох в мире работаю за 15к уже несколько месяцев постоянно чиню всякую хуйню на фалконе на ларавеле на битриксе причем такое чувство что я так ничему не научился нормальному я просто как долбаеб правлю баги очень редко что-то с нуля пишу.... мяуы есть?
>>3403594 И в чем смысл второго пункта? Изначальный вопрос был: как заинжектить рантайм параметры в конфиг. "Надо заинжектить". Ноу щит шерлок. Сделать то это как?
В пункте 3 вообще какая-то хуйня написана. Контейнер симфони это и есть сервис локатор. Задача как раз в этом сервис локаторе сконфигурировать нужный сервис. Причем тут вообще "полезность" какая-то.
Единственная "полезная" инфа - это про лэзи лоадинг, только нахуй он нужен если фабрика используется. У тебя же блядь в конфиге написано FACTORY. Она для того и нужна чтобы сервисы в рантайме создавать.
>>3404090 В том смысле что у тебя всего три раза написано if (!$this->alive) {return;} и всего два раза $this->health -= $damage; if ($this->health <= 0) { Маловато как-то.
Зачем нужна подобная шиза? Последний пример особенно показателен - строка превращается в число, и затем к нему применяется операция битового XOR. Единственный ответ на предложение вычесть число из строки, умножить строку на число и тем более использовать низкоуровневые системные битовые операции со строкой может быть только один - "Прими таблетки, шизик". При этом нет совершенно нет операции деления целого числа на целое число (в 7-й версии, через 10 лет после выхода языка, добавили костыль в виде функции intdiv). Совершенно наркоманский язык для укуренных наркоманов, в котором нет никакой логики.
Для сравнения, как сделано в самом понятном для людей языке. Превразуем строку в число, и далее выполняем любые арифметические операции с числами. Никакой шизы и наркоманщины, все интуитивно понятно даже ребенку.
Смысл второго пункта в том, что ты делаешь обрётку над классом API, которая принимает не конфиг, а конфигуратор. А сам конфиг и объекта класса API создаётся только когда адаптер сделает вызов. Грубо говоря ты сам реализуешь лейзи лоадинг.
У тебя запустилась прога. У тебя сразу есть объект адаптера, конфигуратора и обрётрки над Адапти. Ты чё-то делаешь с конфигуратором, а потом вызываешь метод Адаптера, которые адаптирует не Адапти, а обёртку над ним. Эта обёртка вызовет у конфигуратора метод создания конфига, затем создаст объект Адапти с помощью этого конфига и затем сделает нужный вызов.
>>3404482 Я потому и сказал что жпт хуита навалила говна. Нахуя городить в классе какие-то зависимости от конфигураторов?
Есть известный любому вкатуну, простой как два рубля способ: фабрика. Фабрика соберет не достающие данные в конфиг и создаст нужный сервис в рантайме. Все.
А самое смешное что в жпт высере про лэзи лод именно так все и написано. Беда только в том что ни жп-говно, ни тот кто этот кал потребляет нихуя не понимают че там написано.
1) Ты получаешь из Контейнера проксю Адаптера и Фабрику (Конфигуратор) 2) Ты вызываешь какие-то методы Фабрики, чтобы внутри объекта Фабрики установить какие-то поля, которые потом будут использованы при создании Конфига 3) Ты вызываешь апи метод у прокси Адаптера
После чего вот что делает Контейнер:
1) С помощью Фабрики создаёт Конфиг, вызывая метод build() 2) Создаёт Апи, передавая ему Конфиг 3) Создаёт Адаптер, передавая ему Апи 4) Выполняет апи метод прокси Адаптера, который вызывает апи метод у настоящего Адаптера 5) Адаптер выполняет метод апи у Апи
2 Вариант:
При старте программы Контейнер:
1) Создаёт Фабрику (Конфигуратор) 2) Создаёт обёртку Апи, передавая ей Фабрику 3) Создаёт Адаптер, передавая ей обёртку Апи
Далее выполняется уже твой код:
1) Ты получаешь из Контейнера Адаптер и Фабрику 2) Ты вызываешь какие-то методы Фабрики, чтобы внутри объекта Фабрики установить какие-то поля, которые потом будут использованы при создании Конфига 3) Ты вызываешь апи метод у Адаптера 4) Адаптер вызывает апи метод у обёртки Апи 5) Обёртка Апи вызывает метод создания Конфига у Фабрики 6) Обёртка Апи вызывает апи метод настоящего Апи
Понятно что формулировка у ЖПТ кривая. Типа внедрить фабрику в Адапти. Как ты её туда внедришь тупая нейронка, это просто класс который тебе дан и всё. Ну через обёртку значит, как ещё. Вот я тебе и расписал вариант с обёрткой.
Да, я тоже не понимаю типа чем второй вариант лучше первого? Только сущности зря плодить. Но МОЖЕТ БЫТЬ при каком-то раскладе это будет лучше. Надо внимательно анализировать плюсы и минусы. Но думаю тут не такая прям ахуеть задачать чтобы это анализировать. Вот если бы анон фреймворк какой-то писал то может быть там был бы смысл прям ДУМАТЬ.
>>3404008 Я в такой же залупе первый месяц отработал, только там еще "тимлид" был ебнутый наглухо и писал неподдерживаемую лапшу на CakePHP. Еще нужно было каждый час писать в общий чат чем сейчас занят. Рисуй 1-2-3 года опыта в резюме иди в норм компании. Не ссы, даже если уволят спокойно устроишься на следующую
Такое реально бывает и там реально кто-то работает? Пиздец конечно. Я бы оттуда съебался сразу на испытательном сроке на следующий же день, когда понял как у них выглядит техпроцесс разработки.
В таком месте работать это деградировать как специалист.
Ну ещё ладно тогда. Знаешь, мне кажется это нормально что ты стал бы там писать код для каких-то решений для Битрикса. Главное чтобы у них все тех процессы были выстроены по-взрослому. Работа с репозиторием, ревью кода, процесс тестирования и релизов, процесс деплоя и т.д. Чтобы использовались современные практики и интрументы. Если ничё этого там не было, ты ты ничё не потерял, что ушёл оттуда.
>>3404568 В битриксе это невозможно. Это фрейворк одного разраба - один делет все, отдает нахуй заказчику и сразу бежит к другому. Битрикс просто так устроен.
1) Половина функиональности делается из админки, при этом генерируются всякие файлы .section.php .left.menu.php и прочие. Компоненты с 100500 параметрами всталяются мышкой. У тебя коммиты из автогенерировано мессива состоят, которое ревьювить смысла нет.
2) Ебнутая лицензия, что можно запускать 1 продовый инстанс, 1 для разработки. В доках говорится можно локальный инстанс создать для быстрофиксов, но нужно его затем удалить быстро быстро (прямо так в доках и написано лол). Иначе заблочат твой продовый сайт. В нормальных фреймворках у разработчика локальная версия годами живет, откуда он комиты пушит. Ебанутым надо быть чтобы каждый месяц настраивать.
3) Коллективная разработка ваще под вопросом. В дока битрикса некомпетентный бред про ci/cd. CI/CD это типо для больших пректов, для маленьких используйте скрам и канбан (так и написано бля)
Бля, не знал что там на столько всё плохо. Я представлял себе это так, что у тебя просто лежит код какого-то решения отдельным проектом, со своей отдельной от Битрикса кодовой базой, с разными ветками для разных версий модулей, которые твоё решение расширяет или с которыми взаимодействует по API. Ты его (решение) разрабатываешь, тестируешь на каком-то своём тестовом Битриксе, а потом выкатываешь клиентам обновление решения.
>>3404585 В битрикс24 популярно интеграции через rest api делать. Но их пишут на разых фреймворках, на пыхе или вообще не на пыхе. Просто у многих битрикс24 в облаке и к нему у разработчиков доступа непосредственного нет, если это не коробка. В БУС для магазинов стандартной разработкой занимаются, вот этим всем, с редактированием в админке.
>>3404588 Короче мораль такова что в битриксе современной нормальной разработки нет, там все из ебли состоит. В нормальных пыхопроектах, ты как любой разраб, на любой языке: 1 открываешь утром ноут 2 делаешь docker compose up -d 3 колупаешь задачу 4 git commit -m "я сделаль" && git push origin 5 ждешь когда ci/cd просрется в гитлабе 6 пишет в ютреке в задаче статус 100% я все сделяль В битре такого никогда не будет
Мда, жаль. Значит придётся избегать таких контор, либо уточнять на каким именно проектом придётся работать, чтобы не тратить время на безперспективное занятие, ради какой-то сеюминутной зарплаты, наверняка ещё и сомнительной.
Мне слишком понравилось кодить в дев контейнере и вот это всё. По-моему это база и за этим не только настоящее, но и будущее.
>>3404597 Можешь битрикс24 заниматься если знаешь что проект не на битриксе, а в целом на ларке или симфони выполнен, т е никаких там модулей битриксовских не надо поддерживать. Локальная разработка осложняется тем что надо тестировать на реальном портале битрикса, у которого к твоему локальному проекту доступа нет.
Вот примерные вакаснии пхп 80-150. Это адекватные требования?
Сегодня гулял по лесу, слушал назарова, у него на стриме там зп 600-1лям. Говорит ЗА 2 ГОДА НАХУЙ 350.
Чем они там занимаются нахуй? Этот список на пиках учить заебешься + это все собирать чтобы оно работало. Одна РСУБД - выебет весь мозг чтобы не проебать данные, блокировки, транзакции, репликация, партицирование и прочее.
Что они там учат что за 2 года уже 200+ получают?
Я вот смотрю на эти зп и список требований и лютая дизмораль
>>3404579 >2) Ебнутая лицензия, что можно запускать 1 продовый инстанс, 1 для разработки. В доках говорится можно локальный инстанс создать для быстрофиксов, но нужно его затем удалить быстро быстро (прямо так в доках и написано лол). Иначе заблочат твой продовый сайт. Чувак, как бы тебе сказать... Устанавливаешь битру локально, в ядре комментишь пару строк(легко гуглиться) и все. Локально никаких ключей тебе не понадобится никогда. По разработке - делаешь парку классов-оберток над апи битры и алга свое делать. Я полтора года грёб на галере с битрой/симфони на беке. Все было - и ревью пуллреквестов, и тесты, и ci/cd.
Да нормальные требования. Ты ж не в совершенстве должен всем этим владеть, а просто иметь опыт применения этого на деле, то есть ежедневно в своей практике пользоваться всем этим.
Бери да пользуйся.
Например не знаешь RabbitMQ? Прикрути к своему пет проекту, пойми что это, зачем, как работает, какие лучшие практики применения и т.д. Требования знать это означает лишь то, что у них это используется на проекте и если ты придёшь туда и не будешь знать чё это, то это будет хуйня как бы, согласись. Но это не значит что ты будешь его ставить, настраивать, тюнить. Ты будешь просто писать какой-то код который чё-то читает или пишет в эту очередь, должен понимать как это рабоатет, какие подводные, лучшие практики.
Прочитал Клеппмана - нихуя не понял как лучше делать репликацию в постгресе и в мускл. Как обеспеичвается линеаризуемость? Кворум я буду делать или внутренний движок? Вот допустим есть 3-5 узлов. Синхронно он сам в 1-2 узла пишет, а потом водопадом ассинхронно кидает в другие реплики? И так же по кворуму читает одновременно с тех 1-2 узла в которые пишет, а те асинхронные - резервные и никак не учавствуют? Или они переодически тасуются?
Короче нихуя не понял как ПРАВИЛЬНО делать репликацию. Или нужно еще костыли хуевертить как из главы читаем свои данные, например пишем на один сервер и из него же читаем 1-2 минуты например, а все остальное читаем с других, но не свои данные которые записали и тем самым получается будто бы у нас все синхронно.
Вообще это задача пхп-шника чтобы настраивать реплики, шардирование?
>>3404094 А если создам класс health, со своими методами и свойствами (текущее здоровье, максимальное, жив или нет), мне его передавать как свойство в энимал?
>>3404538 >Да, я тоже не понимаю типа чем второй вариант лучше первого? Только сущности зря плодить. Но МОЖЕТ БЫТЬ Просто пушка. Жпт написала хуйню, но ты даже эту хуйню не понял. И при всем при этом высрал её сюда как какое-то решение.
В первом варианте ты написал полную хуйню. Тебе жпт написала про прокси. Прокси работает так: создается фейковый объект, а когда ты вызываешь какой-то метод этого фейкового объекта - объект создается по настоящему. Как это помогает прокинуть в него данные из рантайма? Никак. Жпт-залупа обосралась - это неправильный ответ.
Во втором варианте ты опять написал хуйню. У тебя конфигратор-фабрика уже засунут внутрь, его не надо "получать". Ты сам должен при работе с классом знать что он не сконфигурирован и нужно дернуть его конфигуратор, чтобы он перешел в рабочее состояние. Что хуйня полная - классы должны создаваться сразу в рабочем состоянии.
А вот как это делается есди ты не въебал говна и вместо жпт параши читал докуменитацию: Adapter: factory: [AdapterFactory, 'build'] Все. В момент когда нужно заинжектить Adapter, будет вызван метод фабрики build, который должен создать объект адаптера и засунуть в него все что нужно.
Это последний раз когда я берусь разбирать жпт высер. Чтобы сгенерировать этот мусор было затрачено гораздо меньше энергии, чем трачу я чтобы в этой хуйне разобраться. Жпт говноеды сто процентно заслуживают того говна, которым их кормят. Но если пытаются накормить своим говном нормальных людей, то их ждет не разбор их мусорной нейрохуиты, а струя мочи в ебло.
>>3404666 >слушал назарова, у него на стриме там зп 600-1лям Лол, слушает инфоцыганчиков удивляется что инфоцыганчики срут ему в уши, ну и почему ты такой дебил?
>>3392535 (OP) >Как вкатиться в PHP в 2025? >Шапка выше порядком устарела. На данный момент лучший способ >вкатиться пройти курсы Хекселт. Проходить можно не отваливая >150к сразу за групповое обучение, которое не нужно, а обучаясь по >подписке за 4к/месяц.
>>3405102 Я узнал этого дурачка который форсит хекслет, это он рассказывал как вкатывался через эти курсы, а потом не осилил ларавель и пошел работать битриксойдом, забавный тип.
>>3405173 Фууу, не хочу. Мне Антон Назаров на стриме сказал что пхпшники зарабатывают по 600к-1000к в месяц, так что меньше этой цифры мне работу не предлагать!
>>3405310 А ты сам не хочешь 600к? За полтос пойдешь работать? Хотя если ты нихуя ничего больше не знаешь и год-два в этом варишься, то хз. У меня в 2013 как у новичка была зп 700$ без опыта с чистым жс, жкуери, пхп и мускл, ну и цмски на уровне юзера.
А тут надо базу за которую я работал и получал 700 + еще дохуя чего
>>3405183 >свой колледж в Питере Во времена золотой лихорадки, стоит продавать кирки, все правильно делают. Нужно больше школ и курсов.
Причем на курсах еще и напугают задачками и попустят, что бы ты там учился годами. Данный персонаж, раньше постоянно затирал, про математику, логику, людям которые не могут торрент скачать.
парни, выручайте. дошёл до ларавел фреймворка, изучив ООП и базу PHP, задумался уйти на Go. Норм вариант? Живу в ДС-2, поэтому тут есть всякие стажировки/junior позиции, на которые попасть можно, как мне кажется. Опыта программирования нет, но как-то хочется сразу зарабатывать больше 100к, чем в пыхе сидеть год-два на 50–60к. Будет тестовое через месяц, нужно будет прорешать алгосы. В случае чего можно просто в GPT скормить задачки и на собесе на стажировке отвечать за реальные знания о языке, которые ты получил за месяц + всякие видосы с собесами перед этим просмотреть. План говно или рабочий? Либо лучше дальше познавать ларавел?
Вообще есть смысл лезть в Go, как первый язык, находясь в ДС-2? Я ушёл с работки 3 месяца назад, живу на подушку и учу пхп. И там и там планирую крутить опыт.
>>3405670 >парни, выручайте Таких сказочных долбоебов давно не видел. И во времена когда брали всех кто ширинку застегивать умеет, вкатывался один из десяти. А сейчас на слова стажировка/джун мгновенно выпрыгивают тысяча долбоебов с накрученным опытом. Как ты через них продираться на собес собрался? Они там все по резюме ебейшие гении с опытом.
Тебе в башку не приходило, что неосиливший пхп еблан, который планирует код писать пастой из жпт, мягко говоря, нахуй никому не обосрался?
>>3405742 >почему неосиливший-то? По определению. Язык ты не выучил, приложения на нем писать не умеешь, зарабытвать с его помощью не умеешь.
>а ты только нагрубил А чего ты хотел? Ты же бредишь. Находишься в делирии. Я хуй знаю какой правильный медицинский термин, "адекватне восприятие реальности"? Видел как врач хлопает по щекам, подсовывает к носу нашатырь и спрашивает: "Молодой человек, вы понимаете где находитесь?" Ты понимаешь где находишься?
Ну судя по тому что пошли заходы про жпт, есть явное понимание что никакого го и алгоритмов за месяц не будет. Так как по твоему твои маняфантазийный бред стыкуется с реальностью? Как это блядь работать должно? Ты позанимался какой-то хуйней, надоело - бросил даже не на половине. Позанимался другой - забил хуй, повтыкал в жпт.
И такое говно значица берут на стажировку, на котрую тысяча откликов за два дня? Бля, да фантазии про принца на белом коне, на фоне этого более реалистичными выглядят. Или расчет типа на удачу? Так может проще и быстрее пойти поставить свою подушку на красное? Там так-то шансы аж 48%. Шансы попать на вакансию с 1к откликов сам посчитать сможешь?
>хотя чего я ожидал, придя сюда Копиума? Внимания? Уж точно не пощечину. В себя приди. Полудурок, не жги бабки. Иди работай, а в свободное время учи пхп. И только как дойдет до успешных созвонов и собесов можешь позволить себе бросать работу. Это будет тяжелый год, и не факт что что-то из этого получится. У людей поумнее и поусерднее не получалось.
>>3408011 Да и смешно что мл и гейдев в расте а не пыхе 1) В пыхе тебя могут заставить апихи от нейгоговна дергать, тем более все юзкейсы нейронок сейчас сейчас через облачных провайдеров 2) В пыхе ты возможно будешь писать фронтенд для онлайн дрочильни 3) с растом ты работу воопще не найдешь
Писал даже не на Расте, а на Си в своё время и довольно много. Ничего там нет особенного от слова совсем. Тот же самый дроч что и везде. Все те же самые типовые проблемы, все те же самые лучшие практики и решения. Именно поэтому придумали те самые языки, которые пришли после Си. ПХП и Ларавел намного больше дадут софтвар инженеру как инженеру, чем Си или Раст. Вместо того чтобы зачем-то заново проходить путь дедов и решать заново все те же самые задачи, ты просто будешь пользоваться их решением.
Раст этот не нужен ни кому будет после того как на нём перепишут линукс. Задач нет у языка. Вся идея языка это писать на Си, но безопасно.
Выросло поколение зумеров неосиляторов, им нужен инструмент чтобы припахать их к разработке кишок и переписыванию легаси. Просто в Си их пускать страшно, они там понапишут. А вот на Расте... Вот для них и придумали Раст. Классно кстати сработало, как видите.
Хотя я лично собираюсь тоже изучить Раст, чтобы перепилить на нём какой-нибудь проектик для портфолио или для фана на гитхаб. Думаю это будет просто.
>>3408066 >Выросло поколение зумеров неосиляторов, им нужен инструмент чтобы припахать их к разработке кишок и переписыванию легаси. Просто в Си их пускать страшно, они там понапишут. А вот на Расте... Вот для них и придумали Раст. Ты буквально написал историю создания Го. Инженеры гугла тупо не вывозили писать на си и им нужен был такой язык, чтобы его мог осилить одебиливший американский зумер после колледжа.
История создания раста вообще другая. Его создали в мозилле блядь. Для тех кто не понимает, мозилла - не коммерческая организация. Она финансируется из фонда, в который откидывает бабки в том числе и гугл. Короче раст был создан челами, которые на флексе делают че по кайфу, для самих себя.
И как следствие - раст много лет является самым желанным для работы языком у программистов. И при этом у него много лет главная проблема с тем что он крайне мало распространен. Потому что за ним нет гигантской корпоративной машины, которая бы его продвигала, как с гуглом у го и микропенисами у шарпа и тайпскрипта.
Но сейчас дело с мертвой точки сдвинулось. С приходом раста в линукс и опенсорс популярность будет только расти. Через несколько лет возможно будет иметь смысл целеноправленно учить раст именно для заработка.
>>3408358 >Инженеры гугла тупо не вывозили писать на си и им нужен был такой язык, чтобы его мог осилить одебиливший американский зумер после колледжа. Кстати, да Кто-то из создателей ГОвна говорил, что они создали этот язык для неосиляторов Си
>>3408016 Поч гейдев должен быть в пыхе? Если скриптером, то мб. Но создать инструменты для скриптинга это уже тяжелее, нужно уметь в ВМ и компиляторы, что не каждый системный долбаеб-байтоеб умеет. А если мультиплеер систему делать, то там вообще жопа.
>>3408371 Чел, чо ты выдумываешь и сам с собой споришь? Там черным по белому написано - фронтенд для онлайн дрочильни. Например твой личный кабинет, где карта привязывается, статистика, достижения отображаются и пр. Сервер обычно на жаве и сишорпе пишется другой командой. Бекенд для "игр" на пыхе встречается токо в гамблиге. Вопрос был не начем можно игры писать, а где в гейдеве работа есть и где вероятнее туда попасть. В этом смысле пыхе выигрывает у раста.
>>3408417 Понятие не имею конкретно про них. Я свой опыт написал. Если нужно на пыхе написать создание или выбор игры или ладдер написать, это тоже подходит под описание "игровой логики". Вакансии стараются сделать более привлекательными.
Мне знаешь чё не понятно. Если у них там все владеют вот этим всем из списка, то почему программы с каждым годом всё хуже и хуже? Мир вакансий и резюме это какая-то параллельная реальность, имеющая мало общего с действительностью.
>>3408417 >грейд не укзан >уровень дохода не указан Сразу в помойку. Если пидарасы даже широкую вилку нарисовать не готовы, то там точно зарплатное кроилово.
Если зп не указана, то это буквально огромный биллборд с надписью: ИДЕТ НАЕБ ЛОХОВ.
>>3408560 Аутист, спок. Это значит что у них 7.3. Все. Не обновляют по принципу работает - не трожь. Обновили на 7.3 когда-то вместе с фреймворком на максимальную версию какая была.
>>3408560 Во первых, там написано 7.3+ Во вторых, там написано про особенности языка, а не версии.
>>3408568 Как сеньор могу сказать про 7.3 что по фичам это по сути 7.2, который по сути 7.1, которому десять лет скоро. Поддержка уже даже восьмой версии закончилась. Язык с тех пор до неузнаваемости изменился, 7.3 это неактульное десять лет назад устаревшее говно.
>>3408572 Прямая, дефиченто. Не поддерживается = нет багфиксов и обновлений безопасности. Если контора, например, связана с финансами она тупо аудит не пройдет.
Я тоже так подумал. Что у них всё сделано по-старинке. Тогда я не особо понимаю как они вообще могут требования предъявлять. С инфраструктурой уровня 2012 года. Они молится должны на то что к ним придётся нормальный разработчик с современным стеком и девопс практиками и перепилит им за 1 год всю инфру и проекты. Но стоит это будет столько сколько они не доплатили в прошлый раз + на переделку + на то чтобы сделать сейчас нормально. Как говорится скупой платит трижды.
Но по факту никто ничего там перепиливать не будет, а тем более платить столько денег за то чтобы внутри всё работало как часы. Это бизнес по-российски, где денег надо сейчас и побольше, а после нас хоть потоп.
Поэтому я бы трижды подумал, чем пойти в такое место. Уж лучше на галере. Хотя бы деградировать не будешь как специалист.
Я опустился на дно. Я установил на Windows 10 VSCode, PHP и XDebug. А так же GIT. Всё для Windows. Есть ли червь пидор хуже меня? Поверьте, это вынужденная мера. Это единственный вариант. Прога должна работать и дебажится строго на Windows, потому что она использует TLS клиент, который только под Windows. А NAT в организации заблокирован. Как только хоть один пакет из NAT покидает твой комп, сисадмину приходит уведомление и у тебя отрубают интернет автоматически. Включают обратно после объяснительной с какой целью и что ты запускал, почему нарушил должностную инструкцию.
>>3404457 Традиции дурдома? Чем выражение VAL("123") - 3 или int("123") - 3 не устраивает? Есть числовой тип, в нем определены арфиметические операции, мы получаем число из строки. Все понятно и очевидно. Плюс при преобразовании числа в строку можно обработать ошибки, если данные некорректные. А еще не различаются целые и вещественные числа, нет массивов (они имитируются через какие-то костыльные хэш-таблицы). Perl, PHP, JavaScript - совершенно шизанутые языки, где ты не учишься программировать, а пытаешься понять изощренную логику их авторов. Вот Python - совсем другое дело.
Потому что я традиционно работаю на стеке C, Java, PHP. А сделать проект надо было за 2, максимум 3 недели. Сам понимаешь в данной ситуации садиться и изучать C# / .NET было не с руки. Хотя там ничё сложного нет изучать там нечего, но всё равно это время.
Просто когда из министерства приходит письмо в духе "осуществить, подключиться, отчитаться, срок 2 недели". То тут не до планирования. Срочно нужно решение чтобы не получить пизды.
>>3409259 >тут не до планирования. Срочно нужно решение чтобы не получить пизды. Есть в этом что-то исконно рассиянское. Выходить на панель, становиться раком, раздвигать булки, а потом изо всех сил уворачиваться от летящих в очко хуев и рассказывать всем: не мы такие, жизнь такая, самодуры-долбоебы панимаешь. Нахуя работать пидарасом у клоунов?
Господа! Увидел в шапке интерактивный учебник. В нём ссылались на php 5.4. Подскажите, пожалуйста, разница между текущей версией и версией учебника не помешает в практике?
>>3409519 Задача пограммистакак раз преодолевать такие трудности (отсутствие достаточной информации, несоответсвие версий, невыполнимые задачи от руководства и прочее), а не жить на всем готовом, иначе он нахуй не нужон. Если все будет как в инструкции написано, тогда и чат гопота справится.
>>3409524 Друже, спросил весьма дружелюбно. Всегда нужна точка опоры. Здесь я её пробую найти. Ты прочитал и начал трястись. Нравоучение прочитал. Чё трясёшься - то? Советую тебе самому интуитивно научиться чему- нибудь сложному. К старости освоишь - поделишься.
>>3409535 Какая тряска? Я тебе ответил как есть. Какой вопрос, такой ответ. Откуда другим знать помешает тебе это или нет. Если дурачек, то помешает, если не дурачек то не помешает.
>>3409536 Да и принципы написания кода на пыхе не изменились с 5 версии, чтобы там лапухи не говорили. Те же сервисы писали, тот же DI, только флеру добавили с псевдотипизацией.
Не я один здесь мастак формулировки правильные выстраивать. Программист - человек преодолевающий трудности. Литерли, Ваномас. А, может, программист, это человек, решающий задачи бизнеса? Хорошо, если тебе не нравится формулировка моего вопроса, переформулирую: насколько критичные изменения в синтаксисе произошли за последнее время, относительно версии 5.4? Есть ли у кого информация, когда в последний раз актуализировали учебник из шапки. Ну, и словами бросаться не нужно. Понятно, что анонимность, но веди себя корректно.
>>3409543 Абсолютно согласен. Почему спросил? Имел счастье общаться с человеком, который поведал, что перекат с 5 версии на 7 сломал всё и вся. Мол, вообще всё изменилось (включая синтаксис). Человек звал маму, пускал каку. Решил перепроверить. Антон здесь сидит образованный и подкованный.
>>3409547 Сломал при переходе с 5 на 7 - это вопрос прямой и обратной совместимости. Например в 8 пыхе есто обратится к несуществующей константе $x = MY_CONST; то будет ошибка, а более ранних версиях $x запишется строка "MY_CONST" Так что при переносе кода может быть куча проблем.
Только это к навыками решать задачи на пыхе не имеет никакого отношения.
Можешь поучить инфу из шапки, а потом лучше пройти туториалы на symfonycasts или/и laracasts
>>3409552 То есть если будешь на 5 пыхе писать 1) не надо пользоваться такими спец эффектами, да ты скорее всего о них и знать не будешь 2) если получишь ошибки при выполнении кода, то это наоборот хорошо. Это должно помочь изучению а не помешать, если думать, а не просто копипастить код
Дайте, пожалуйста, оценку ситуации со стороны. Как и многие вкатышки, вляпался в то, что начал скакать между языками. Изначально нашёл бесплатные курсы от энтузиастов (IT for free). Там и была программа с проходом в php + symfony . Но для её начала нужно было освоить программу по Паскалю и пройти алгоритмическую практику. Появилась возможность поступить на курсы профессиональной переподготовки. Первые курсы оставил (успел пройти до массивов, нарешав гору задачек). Поступил на курсы в свой вечерний заборостроительный в надежде, что там программа, на основе полноценной вузовской. Крайне нерасторопно преподают с++ (первый "курс"). На удивление, перекат с Паскаля оказался лёгким. В рамках программы даётся с/с++, с#, чуть php, MySQL, что - то про вёрстку. Фреймворков нет. 540 часов. Какая - то сборная солянка. Кажется это путь не туда. К тому же, диплом, что выдаёт шарага не гос образца, а установленного. Ребята, что кончали ВУЗы на программиста, подскажите: у вас такая же солянка была или в более людской форме?
>>3409563 Всегда так было. В вузах единица измерения это "предмет" и "учебный модуль". Язык это всего-лишь инсрумент для изучения модуля. Обрати внимание, у тебя в предметах нет "Основ С++". У тебя там какая-нибудь "Информатика и основы программирования" или "Основы алгоритмизации и языки программирования".
То какой язык в итоге будет использоваться зависит от: того какая в этом году моча в башке у министерский чинуш, деканата твоего вуза, конкретного препода.
>>3409519 Умение программировать на конкретном языке состоит из нескольких разных навыков.
Первый. Базовый компьютер саенс. Что такое программа, что такое функция, цикл, ветвление, данные. Умение формализовать задачу и составить алгоритм её выполнения. Для этого можно (а вообще прямо рекомендуется) использовать хоть паскаль, которому натурально 50 лет. Потому что эти зания не устаревают, они универсальны и четко формализованы. Это то чему пытаются учить в вузах, например.
Второй. Умение писать на конкретном языке, знать его синтаксис. Создание на этом языке рабочей программы, которая делает то что тебе нужно. Эти знания тоже четко формализованы. Ты можешь открыть ченджлог и прочитать что изменилось https://www.php.net/releases/7_0_0.php Если ты знаешь базу из первого и второго пунктов тебе не составить труда изучить новый синтаксис.
Третий. Умение писать идеоматично, в соответствии с современными коммерческими требованиями и представлениями. В коммерческо разработке к твоему коду, помимо факта что он в принципе работает и делает то что нужно, есть ещё куча требований. За годы сформировались стандарты, определенные стили, продиктованные в том числе разными фреймворками. Появились обязательные инструменты типа композера и код сниффера, с которыми надо обязательно считаться. И вот эти знания как раз не формализованы. Ты хуй найдешь книгу где тебя могут этому научить, потому что книги пишутся гораздо медленне, чем я зык развивается.
Если учить язык по его старой версии, то вполне можно овладеть первыми двумя пунктами. Но без третьего ты все равно работу не найдешь. Да и вообще зачем учить язык по старой версии, когда можно сразу чить по новой?
>>3409643 Третья часть немного грустно звучит. Чтец в плохом настроении может узнать в этих строках классический мем : чтобы работать нужен опыт, а где я опыт возьму, если без опыта не берут. Не думаю, что всё так страшно. Однако, факт того, что не менее 30% вкатышей крутят опыт, говорит о правдивости предположения. Не попробуешь, не узнаешь)
> Второй. Умение писать на конкретном языке, знать его синтаксис. Создание на этом языке рабочей программы, которая делает то что тебе нужно.
Надо ещё знать стандартную библиотеку. Не то чтобы наизусть, но знать самые основные его части. А наизусть знать самые часто используемые функции и классы.
Меня знаете что беспокоит в PHP. Я не понимаю как и на чём зарабатывают те, кто делает продукты в его экосистеме.
1) PHP исторически и сейчас это язык для веба. 2) PHP имеет хорошие веб фреймворки.
Логично полагать, что основной продукт, который делается на PHP, это различные веб приложения. Но на рынке веб приложений огромное количество решений, просто море.
Если какому-то бизнесу просто нужны лендинги, статический сайт, с какой-то формой обратной связи или типа того. Зачем ему делать решение на PHP? Для этого есть всякие Тильды и Сквар Спейсы. Просто за копейки делаешь себе красивый сайт, даже программист не нужен, ну можно заказать где-то за копьё. И всё. Не нужно ни какого PHP.
Если какой-то бизнес что-то продаёт, оказывает какие-то услуги, то можно просто купить Битрикс 24. Даже ставить ничё не надо он тупо в облаке. Платишь 50к в год и у тебя сразу вообще всё что нужно для продаж. Там тебе и ЦРМ и сайты которые делаются конструктором и продажи и касса и всё вообще. Тупо комплексное решение. 100к в год плата с учётом онлайн кассы и смсок. Это копьё это ничто. Зачем тут нужен какой-то PHP какие-то Ларавели?
Ну вот кто и что делает на PHP и как компания зарабатывает на этих решениях вы можете конкретную нишу показать? Что делают на это Ларавеле? На Симфонии. Зачем они вообще? Кто за это платит?
Я сам давно на PHP пишу, но это в основном внутреннее что-то. Какая-нибудь небольшая веб приложуха или скрипт внутренний. Это не зарабатывает напрямую фирме вообще ничего. Просто является часть системы которая зарабатывает.
>>3409676 Причем здесь говнокод? В 2к25 году ты для разработки на пхп обязан уметь пользоваться композером и писать по PSR-4. Это не обсуждается, тут неочем спорить. Просто пхп экосистема сейчас работает вот так. Десять лет назад было не так, а сегодня так. Будь добр изучи как надо сейчас.
>>3409686 Пхп - это джава для бедных. Если хочешь что-то похожее на энтерпрайз, но денег на десять джава или шарп макак нет, то ты можешь взять пхп и получить примерно то же самое, но в пару раз дешевле.
В этом я с тобой согласен. Но по факту получается так что многие кладут хуй на подобные вещи. Знаешь как в том меме? Зато выглядит пиздец как грозно. Приходишь на фирму, тебе прям дают целый мануалище здоровенный типа корпоративные соглашения, документация, стили. А смотришь потом код - всем поебать. Грустно.
>>3409698 Веб - это все что работает по http запросу. А это сейчас вообще все. Даже в одном облаке, на одном и том же физическом сервере, контейнеры по http общаются.
Высказывание не совсем справедливо, но содержит рациональное зерно. PHP действительно дешевле и проще в использовании, особенно для веб-разработки, и может частично перекрывать задачи, решаемые Java или C# в enterprise. Однако называть его "джава для бедных" — это скорее стереотип и упрощение, чем точная характеристика. Языки решают разные задачи, и выбор между ними зависит от контекста, а не только от бюджета. Если оценивать по 10-балльной шкале справедливость, я бы дал 4/10: идея понятна, но слишком много допущений и неточностей.
>>3409695 Я хз о чем ты вообще. Ты не можешь "поебать" на композер, у тебя проект работать не будет без автозагрузки. Со стилями то же самое. Если в пайплайне настроен код сниффер, то он мердж реквест с кодом не по стилю тупо не пропустит.
>>3409686 >Если какой-то бизнес что-то продаёт, оказывает какие-то услуги, то можно просто купить Битрикс 24. Не всегда >Ну вот кто и что делает на PHP и как компания зарабатывает на этих решениях вы можете конкретную нишу показать? Что делают на это Ларавеле? На Симфонии. Зачем они вообще? Кто за это платит? Если бы не делали,то не стали бы делать платные облака от симфони и ларки
>>3409736 >Я набрал в гугле популярные сайты на Ларавеле. Там какое-то образование (стрижка лохов А я открыл сайт ларавеля и там все кучеряво. Но совсем другой вопрос: зачем стартовать на пхп СЕГОДНЯ.
>В России 1С с Битриксом это всё уничтожат в ближайшие 5 лет Малой, этому говну уже больше десяти лет. Живет оно исключительно на сверхагрессивном маркетинге и рекламе. А самое главное: концепция "интернет магазина", для котрой делался битрикс, в рунете полностью умерла. Собственно владельцы битрикса это поняли гораздо раньше, чем такие додики как ты, и высрали свой битрикс24, на нем и живут до сих пор.
Глядя на этот список я представляю себе это так что какая-то компания решает что нам надо сделать сайт. На сайте будет всякая информация красиво оформленная. Возможно какие-то статьи, каталоги, бложики. Возможно какие-то веб интерфейсы для наших сервисов.
То есть типа какой-нибудь Кенон или ОпенАИ не пойдёт на Сквар Спейс делать себе сайт визитку, им нужен свой кастомные продукт. И тогда может быть принято решение делать сайт на каком-нибудь популярном веб фреймворке, типа Ларавеля на ПХП. Там есть все необходимые компоненты, а которых нет, легко можно дописать, всё будет полностью под контролем какой-нибудь аутсорстинговой компании которая занимается в том числе веб разработкой.
Кстати ты прав насчёт этого. Что концепция интернет магазина - всё. По моим ощущениям сейчас больше всего покупают через маркетплейсы. А на Озоне, к примеру, есть даже официальные аккаунты магазинов.
>>3409842 Подставь вместо PHP любой другой язык получишь те же самые правдоподобные рассуждения. Все балабольство своидится к вопросу а почему пхп. А почему не пхп собственно?
Вот умерла концепция интернет магазина. Ей на смену пришли маркетплейсы. Интерент магазинов на пхп была куча. А сколько маркетплейсов на пхп? Один из десяти? Или вообще ноль? Там нагрузки другие, объемы больше, пхп такое не вывозит.
Вот умер бекенд рендеринг хтмл. Везде теперь спа и приложения. Сколько фронтенд задач осталось у пхп программистов? Одна из десяти, которые были раньше? Или вообще ноль? У тебя теперь язык, главная фишка котрого теперь нахуй никому не нужна и только мешает. Та самая заебавшая в край фишка что твой пхп код это по сути файл разметки.
Вот демпенгуют питон макаки. Их просто какое-то бесконечное количество и они готовы работать за еду. Сколько из тех кто использовал пхп чтобы сэкономить на рабочей силе будут начинать новый проект на пхп? Один из десяти? Или вообще ноль? На джанго можно нахуярить все то же самое что на ларавеле. Как пхп в этой конкурентной борьбе побеждать собрался?
Вот начали весь хайлоад переписывать на го. Во всех сеньорских пхп вакансиях уже несколько лет как го прописан. Сколько интересных сеньорских задач осталось на пхп? Одна из десяти? Или вообще ноль? Пхп сеньоры буквально целыми командами перекрашиваются в го сеньоров, закупают хомяков себе на столы оптом и больше к пхп никогда не прикасаются. Как пхп будет эту потерю возмещать?
Да, на пхп сейчас дохуя старых проектов. Но перспектива то какая? Вечно сидеть за копейки поддерживать легаси говно на заплесневевшей версии, из-за того что весь буджет ушел го разрабам и фронтендерам?
>>3409873 На любом серьезном языке самый распостраненный вид работы - поддерживать легаси. Вот ты сенька в ноунейм компании и поддерживаешь легаси на пыхе и тут кабану нужно мвп нового проекта написать, будет ли он на пыхе зависит от тебя. Если тебе пыха надоела, возможно он будет не на пыхе. Если у тебя четверо детей, жона, рыбалка и прочие удовольствия, то возможно проект будет снова на пыхе. Почему я должен верить твоим рассуждениям если я относительно недавно занимался написанием мвпшек на пыхе? Вобщем-то я ушел от пыхи, если честно, ну просто она малоинтересная, а не потому что на ней нельза что-то современное сделать.
>>3409880 За пару лет короче не умрет. Говнокоды будут поддерживаться и новые создаваться еще долго, просто потому что не всем хочется 10 языков изучать
>>3409880 > Если у тебя четверо детей, жона, рыбалка и прочие удовольствия, то возможно проект будет снова на пыхе Не,с такими вводными только джава,лол
Умные люди переписывают там где это действительно нужно и критично, после тщательного анализа и тестов. А есть ещё армия долбоёбов которые на хайпе переписывают вообще всё, таких тоже сейчас стало полно. Go на западе уже начал заёбывать людей, код на нём получается абсолютно каловый и не поддерживаемый. Одно дело когда ты на нём делаешь какой-то один критичный сервис, который в этом действительно нуждается, а другое дело когда ты хуяришь на нём вообще всё.
Абсолютно искусственный хайп, направленный на то чтобы что-то переписать ради переписывания и нарубить на этом бабки из воздуха. Поддерживать это никто не собирается, волна хайпожеров после Go уйдёт в другой сильвер буллет и про Go будут писать тоже самое что ты сейчас пишешь про PHP.
Раст как раз наоборот создан чтобы переписать огромное количество старого неподдерживаемого кода, которым никто не хочет заниматься, кроме дедов, а они уходят. Это позволит сделать ПО более стабильным и безпроблемным. Ну по кр мере я так вижу смысл раста.
А голенг чем-то хорош кроме того что горутины специально созданы и заточены на типичную для веба задачу по многопоточной обработке множества запросов в единицу времени?
>>3409957 Смотря что ты называешь стартапом. Чтобы я не сказал ты отвешь что это не стартап. Я работал в пыхогалере. Делали мелкие стартапы. Приходили люди с общими идеями бизнеса и мы пилили на пыхе с нуля проект который только в теории существует, а не интеграция или решение проблем существующего бизнеса. В тот момент времени все хотели свой ит бизнес. Были даже посредники из сшп.
>>3409880 >Вот ты сенька в ноунейм компании и поддерживаешь легаси на пыхе И тебе нахуй не нужны никакие вкатуны. Работы меньше, а жадных до денег долбоебов больше.
>>3409932 Лол. Каловый он в сравнеии с шарпом или растом. А в сравнении с пхп он так-то нихуево выглядит. Как раз таки в пхп среде хайп по го абсолютно органичный. Пхп макаки исторически варились в своем загоне, огороженные от других языков, потому что (в общем-то справедливо) считались дебилами и говнокодерами. И они нашли себе язык для дебилов. Го - эсперанто для пхп макак, он позволяет им хоть как-то коммуницировать с остальным айти сообществом. Так что го в пхп экосистеме незаменим. Он точно никуда не уйдет и будет только расти.
>>3409953 Во первых, на расте гораздо приятнее писать код. Во вторых, на расте можно писать хоть в функциональном стиле, хоть в ооп. В тертьих, главная фишка раста это гарантии безопасности работы с памятью на уровне компилятора. Если ты пишешь многопоточное приложение то раст просто не даст тебе обосраться с неправильным использованием памяти.
Пхп код на него переписывать не будут как раз из-за его преимуществ. Потому что пхп макаки тупо не осилят богатый на фичи язык со строгим компилятором.
>>3410031 >Раст чем-то более приспособлен для рещения веб задач, что на него все будут переписывать >Речь там шла о переписывании на раст не всего вообще и не веба
>>3409997 >Во первых, на расте гораздо приятнее писать код. Не объективно. Для фанбоев раста только. Для пыхеров голанг будет поприятние, сам же себя ниже опроверг утверждением что пыхеры не осилят раст. >Во вторых, на расте можно писать хоть в функциональном стиле, хоть в ооп. На пыхе тоже, так как все современные языки тащат фичи из фп. Вот и в пыху принесли match, хотя конечно на данном этапе петтерн матчинг в пыхе ваще никакой по сравнению с растом >В тертьих, главная фишка раста это гарантии безопасности работы с памятью на уровне компилятора. Неактуально для вебмакак. Никто не будет в голове держать особенности лайвтамов и мув семантики, когда надо нонстопом бизнеслогику дрочить. Для веба актуальнее языки со сборщиком мусора. На 146% актуальнее >Пхп код на него переписывать не будут как раз из-за его преимуществ. Потому что пхп макаки тупо не осилят богатый на фичи язык со строгим компилятором. Ну раз не будут то и спора нет... Перепишут на голенг или скорее всего нихуя не сделают. Пыхи достаточно для чтобы интергацию маркетплейса с битрикс24 запилить
>>3410074 >Для пыхеров голанг будет поприятние Никто не говорил про "приятнее", просто у пхп макак других вариантов нет. Будут плеваться и писать if err != nil пока не сдохнут.
>На пыхе тоже Ну давай, бомбани мне че-нибудь на пхп в функциональном стиле. Очень интересно как ты это будешь делать без монад и каррирования.
>в пыху принесли match, хотя конечно на данном этапе петтерн матчинг в пыхе ваще никакой Он не "никакой", его вообще нет. Не понятно нахуй ты этот матч вообще приплел, из-за того что название похожее? Match в пхп - это switch, просто более удобный.
var_dump($output); Потому что в свитче c типом бул должны быть два варианта фолс и тру В некоторых языках свитч работает как матч
Ясно что в расте паттерн матчинг как в фп распостраняется на весь язык - в этом главное отличие. Но в пыхе так как и в любых языка функции это ферст клас ситизен, есть лямбды. Каррирование тоже можно запилить Есть либы
>https://github.com/fp4php/functional >195 stars >Release v6.0.0 May 22, 2023 Пчелидзе... Давай без откапывания чужих гробов. Я попытки высрать монады на пхп еще в 2012 видел. Ты просто напиши что-нибудь в функциональном стиле на пхп https://3v4l.org/ или вальни пиздак.
>>3410128 Ну и? Я же об этом и написал >Свитч это тоже паттерн матчинг только более упрощеный. >В некоторых языках свитч работает как матч Я же и утверждал что пыха добавляет фичи из ФП как все мейнстримные языки. От того что свитч работает как матч пыха только "более фпшной" стала. Попробуй в сишке так написать
>>3410128 И вообще я не приравниваю пыху к расту откуда ты это высрал непонятно. Наверно из желания поспорить. Я наоборот утверждал что если и перепишут пыхокод то на голенг. Раст слишком ирелевантен пыхе.
>>3410139 >Я же и утверждал что пыха добавляет фичи из ФП Ты утверждал хуйню. Свитч в пхп в таком виде с самого появления языка. Никто ничего не добавлял как "фичу из фп". Можно бы было с натяжкой притянуть лямбды, но лямбды в пхп это в первую очередь замыкания для объектов, они не как фп фича добавлялись.
Короче ты высказал два ложных тезиса: что можно на пхп писать в фп стиле и что в пхп добавляются фп фичи. Оба неверные. Пхп изо всех сил пытаются превратить в недоджаву, никаким фп там не воняет даже.
>>3410249 Но вобще-то фп появилось гораздо раньше пыхи 4. Откуда ты знаешь то было на уме у расмуса ледорфа когда он пыху 4 версии создавал. Посмотрел на хаскель с окамлом и запилил свитч как там, а не как в сишке. Почему у тебя представление что ФП это что-то новое молодежное, а пыха старая засохшая перловка...
Здравствуйте, уважаемые веб-мастера широкого профиля и инженеры разработчики программного обеспечения на языке пи эйч пи.
Суть моей проблемы в том, что на данный момент я более менее на каком-то минимальном уровне освоил html, css, js, webpack. Чут чут пыху и вордпресс дрочил. Чут чут sql.
И если быть точнее, то проблема в том, что я почти два года назад пробовал стажироваться летом в провинциальную микрогалеру. И там дали задание сделать систему учёта продаж на laravel и интегрировать с 1С. Я соснул писю и ничего не смог.
Каждое лето там в микрогалере проходит летняя стажировка. Прошлым летом я не успел туда зайти. Хочу подготовиться к этому лету и опять попробоваться.
Осталось 2-3 месяца. Скажите, плес, надо ли обязательно задрачивать redis, Kaffka, elasticsearch? Или если просто дрочить nginx, docker, php, sql, laravel, то должно хватить? Или чи шо? Как за пару месяцев натренироваться?
>>3410709 Достаточно загуглить одну из тысячи статей "docker + laravel". Спизди на рутрекере какой-нибудь курс "делаем %хунянейм% на ларавел" и курс по пхп где много сидов. Все. Сиди учи.
>>3410715 Спасибо большое, я решил, что бэк пыховый буду учить, но налегать буду на vue nuxt фронтенд, типа я дрочитель фронтенда, который слегка бэк пощупал.
Я же не могу в VSCode подключить папку с виртуалки как проект(воркспейс), чтобы в IDE работали пункты меню вида "Go to Definition", "Go to References", "Find all references" и т.д. ?
Для этого надо перенести виртуалку на пеку и запускать её на каком-нить Laragon? Основная проблема конечно в том, что у меня винда.
Какая домашняя система на машине, где установлен VirtualBox? Какая система стоит в VirtualBox в качестве гостевой? Какой именно "сервак" и каким образом установлен в гостевой системе?
> Я же не могу в VSCode подключить папку с виртуалки как проект(воркспейс), чтобы в IDE работали пункты меню вида "Go to Definition", "Go to References", "Find all references" и т.д.?
>>3410734 >Какая домашняя система на машине, где установлен VirtualBox? Win 10 >Какая система стоит в VirtualBox в качестве гостевой? CentOS 7 >Какой именно "сервак" и каким образом установлен в гостевой системе? Bitrix VM, не совсем сервак, там просто находятся сайты для разработки. >VSCode Remote SSH Попробовал, подключился, теперь эти пункты меню вообще пропали и есть только "Change all occurences".
Попробовал так же подключить локальную папку (которая используется в Ларагоне, в папке Ларавел сайт) как workspace и там проблема почему-то осталась - если файл не открыт, то VScode не видит ни definition, ни references.
Суть в том, что тимлид работает на ПХП шторме и там это из коробки всё есть, он сканирует проект как я понимаю и спокойно переходит по функциям в разных файлах, а у меня пердолинг какой-то.
>Starting with VS Code release 1.99 (March 2025), the prebuilt servers distributed by VS Code are only compatible with Linux distributions that are based on glibc 2.28 or later. >glibc 2.28 А на моём BitrixVM 7.5 они точно ниже, не так давно сталкивался с этой же проблемой.
Ты учёл тот момент что когда ты подключаешься, то ты подключается к VSCode Server у которого свой набор расширений, который по-умолчанию пуст? Подключись и открой расширения, открой вкладку где расширения которые установлены там куда ты подключаешься. Доустанови то что нужно.
>>3410749 Но почему тогда этот функционал не работает на локалке? Я добавил папку как воркспейс, указал пхп путь в настройках папки и нифига, не ищет в неоткрытых файлах.
Как вообще правильно это называется, у этого есть термин?
Как я понимаю заработало по SSH, но очень долго конечно это всё, причем я оставил только 2 папки для надблюдения. Надеюсь после переноса на локалку побыстрее будет. >>3410773-кун
>>3410709 >И там дали задание сделать систему учёта продаж на laravel и интегрировать с 1С. >Я соснул писю и ничего не смог. Бля, браток, лучше выкатывайся пока не поздно, такое пишут нормальные люди ещё в школе, совсем уж детский уровень...без обид!
> сделать систему учёта продаж на laravel и интегрировать с 1С
Так и сказали? Максимально не понятно по твоему описанию что тебе надо было сделать.
Тебе надо было какой-то интеграционный сервис сделать, который просто крутится где-то как фоновый процесс и копирует данные о продажах из одной системы в другу? И чё сложного? API у тебя наверняка было и со стороны сервиса продаж и со стороны 1С.
Единственный сложный вопрос который тебе нужно было обсудить это то каким образом мы будем помечать продажи уже синхронизированные с 1С, чтобы бесконечно не обращаться к каждой продаже.
>>3410890 Я очень извиняюсь я костоязычен. Постараюсь объяснить что надо было сделать.
Ну мне объясняли что нужно сделать систему учета, типа надо запилить на laravel такую штуку что типа из админки ты можешь настроить себе интернет магазины на разные тематики.
Типа срёшь интернет магазинами, один интернет магазин - допустим точка с молоком. Потом высрал другой интернет магазин - в нем продаешь куртки как турок Четин.
И эта система учета общая для всех магазинов, там как база данных в которой хранится чего и сколько продано.
И эту информацию еще в 1С посылать надо чего и сколько продано.
Ну кстати я не получил прямо точного описания того, что нужно сделать, я просто от ужаса навалил в штаны, убежал со стажировки и выключил телефон. Это ж блять надо пилить не только саму систему, еще и надо как-то сделать возможность из админки плодить интернет магазины и сами эти интернет магазины универсальные придумать.
Я убежал потому что я знал на тот момент только штмл цсс жс вебпук 5 и рякт. Пыху вообще не знал.
Мне потом начальник микрогалеры смс прислал мол сыч ты где?
А laravel я вообще никак не знал, я хочу подучить и снова туда этим летом зайти и сказать извините я обосрался прошлый раз, но с тех пор подучился дома в обнимку с чатом жпт.
Судя по тому что ты стажер, там всего скорей требовалось всё это сделать на уровне хелоу ворлда. Зря ты съебался кароч. Никто бы тебе не поручил делать реальный интернет магазин и систему учёта, они же не ебанутые.
Всего скорей тебе нужно было придумать всё это будет выглядеть, загуглить как вообще делаются такие вещи, накидать архитектуру, накидать примерно базу, накидать инфраструктуру простейшую на микросервисах.
И всё это потом презентовать или даже сделать на уровне хелоу ворлд.
Судя по объёму до написания кода ты бы ваще не скоро дошёл ещё. Всю стажировку проектировал бы и схемы рисовал.
Благо сейчас неронка есть и у неё тупо можно спросить как это делается. В мои времена ещё 5 лет назад о таком и подумать было нельзя. Пошёл бы в гугл читать или книжки.
>>3410106 Получше подумал. Тут был не прав на счет того что этот match как-то связан с паттерн матчингом. В ФП паттерн матчинг проверяет структуру данных (или форму данных), а не неравенства. Короче в пыхе как всегда взяли модный синтаксис, но влепили свою хуйню под него просто продублировав switch. Вечный каргокульт.
Устрой деплой! Порядок - это отстой! Пуши, коммить, залезь в базу рукой! На ревью забей, контейнеры запускай! Давай, давай!
Честное слово, я не виновен! Я не знаю, почему нахмурены брови. Ищу бекапы в последней надежде. Я никогда ничего не ронял прежде. Я никогда ничего не мёржил прежде. Был тих, спокоен, с джунами вежлив. Всегда только в GC бросал мусор. Обходил стороной релизные тусы. Запрещённых либ никаких не юзал. Был положительней Си плюс плюса, А потом как-то раз ПиЭма услышал, И всё - прощай моя крыша!
Припев Х2
Если вдруг у тебя нет таски, Я могу тебе легко одолжить свою, Но только чур чтоб ты потом не ныл. Мол, "Евген, ты мне подложил свинью". Давай с тобой договоримся тупо: Твой коммит — это твой коммит. Свою ответственность перекладывать глупо. Git в истории всё хранит. Я рад, что ты со мной согласен, друг, А теперь давай-ка взгляни вокруг: Всюду баги, тех.долг кругом. Задай им жару, устрой погром!
Припев Х2
Почему утекают битики? Почему для таски мало информации? Почему на ревью много критики? Почему ждём проекта индексации? Почему сервер не заводится? Почему сидим так тесно мы? Почему за багами не охотятся? Это всё ПиЭм со своими песнями!
Припев Х2
Давай, давай Х5
Я — санитар системы, а вы все козлы, А вы все козлы, а вы все козлы... Круто быть мидлом, молодым и злым, Молодым и злым, молодым и злым, Молодым и злым, молодым и злым, Молодым и злым...
Плохо быть синьором, сонным и больным, Сонным и больным, сонным и больным, Плохо быть синьором...
>>3410733 Вряд ли это твой случай, но ключевые слова может попдуться тебе тут. У меня с виртуалбокс работает вагрант. На компе стоит вин10, а на вируталке центос 7. Если не хочешь ставить вагрант (а там мозгоебля с версиями, нужно смотреть какая версия вагранта с какой вверсией виртуалбокса работает), то там работает так, что он сначала в хостах прописывает домен и ip виртуалки, потом между vbguestaddition дает доступ к ssh, потом синхронизирует папку проекта на домшней системе с гостевой ччерез nfs. Все что ты пишешь у себя в проекте на локальной машине видно на виртуалке ну и там nginx в эту папку смотрит. при обращении к домену в хостах попадаешь на виртуалку, в которой nginx слушает порт и открывает index.php из синхронизированной папки. Вот с Centos 7 большая проблема, что она не ставится нефига, потому теперь не откуда брать kernel kernel-devel для работы синхронизации папок. До января все работало, но потом поломался вагрант и нужно было заново поднимать машину с нуля и на центос7 его больше не поднять. Можно было бы изменить репозиторий для установки kernel-devel, но я решил на докер перейти.
>>3411950 Тебе надо просто настроить в витуалбокес ssh server Для этого в настройках сети в в виртуалбоксе выбрать тип адаптера мост Либо оставить NAT, тогда в насройках сети в виртуалбоксе есть вкладка где можно сделать проброс портов. Тебе надо пробросить 22 порт из виртуалбокса в винду Потом с putty создаешь пару ключей, публичный копируешь в виртуалбокс в домашнюю папку в файл .ssh/authorized_keys Ставишь плагин в вскод remote explorer В вскоде у тебя будет иконка эксплорера По нажанию которой у тебя слева будет список ssh серверов для подключения Выбираешь подключение к виртуалбоксу и все готово Выбираешь папку проекта Редактируешь в гуе вскода на своей винде внутри виртуалбокса Только не забуть нужные плагины установить внутри виртуалбокса. У тебя в вскоде будет отдельное меню с плагинами установлеными в винде и не установлеными на "сервере" c предложением их установить удаленно
>>3412014 >В винде композер даже сам себя в PATH добавляет Браузеры сами себя обновляют, сотни одинаковых либ сами себя ставят васянскими инсталляторами, теперь ещё и говноскрипты на пехопе сами себя прописывают в окружение - и всё потому что в системе даже пакетного менеджера нет, есть только сплошная гигантская помойка, где кто угодно может насрать в любое место. Какие же спермобляди опущенные говноеды.
>>3412049 Я хоть и не виндузятник но скажу что ты ошибаешься. В винде как сто лет есть пакетный менеджер MSI, аналогичный dpkg дебиана убунты (apt это фронтенд умеющий ходить в удаленные репозитории) или rpm федоры. Просто в винде сторонними велосипедами привыкли пользоваться из-за стабильности окружения винды.
>>3393194 >>3393563 Грок по моему лучше всех отвечает. Дипсик помню мне в деталях чуть напиздел, что я сам противоречие нашёл небольшое, потом в грок отправил и он всё правильно рассказал. Гпт не рассматриваю, бесплатный испортили, а платить с заебами и хуй пойми как я не собираюсь, тем более когда есть сервис лучше
>>3404548 > Рисуй 1-2-3 года опыта в резюме иди в норм компании Это же не так легко когда кореша с опытом нет. Вот допустим я даже не представляю как разработка идёт в реальной компании. Допустим я дома освоил ларавель, могу всё что угодно запилить, а там чпростч не очевидные моменты по которым будет понятно, что ты никогда разработчиком в компании не был. Про гит там, докер допустим тоже можно дома посмотреть, а есть же какие-то жиры, аджайлы, созвоны, прочая хунйня, с которой знаком любой джун
Вот есть один сервер, на котором докер, бд, php, nginx, небольшой бизнес, основной упор на чтение контента. Но бывает и так что юзер может загрузить файлы на сервер.
1. Как осуществляется загрузка файлов в aws s3?, с того же сервера? юзер - сервер - aws s3? Или ему выдель отдельный, чтобы пост запрос уходил на другой и с него в aws s3? 2. Где еще можно прочитать как выстраивать серверную инфраструктуру типа лоадбалансер, nginx, брокер. Вопрос не про БД - там отдельная тема, там реплики для чтения хватит.
>>3412174 Лучше всех отвечает документация. Вы парни совсем охуели. Ебало делаете как буд-то там четырехтомник Кнута нахуй. Документация фреймворка страниц двести. Читается за один вечер. И к каждому блядь фреймворку обязательно есть книга "Учимся вместе. По шагам для дебилов."
Нет блядь, надо пользоваться бредогенератором говорилка, который несет какую-то хуйню, соскрапленную со статей индусов-рерайтеров.
Еще раз: говноеды заслуживают того говенного блюда которое они жрут. В своем праве. Но нехуй вываливать этот нейропонос сюда под видом каких-то "решений" и "ответов" если вы блядь НЕ ЗНАЕТЕ НАХУЙ правильный ли это ответ.
>>3412232 Бля, просто вальни еблет свой. Если тебе не понятен пикрелейтед, то тебе надо даже не полы мыть в говнерочке, а бежать в пнд инвалидность по олигофрении получать.
>>3412240 Может быть он не понимает английского языка а перевод переусложнён корявой терминологией? В любом случае ему сложно и ничего с этим нельзя поделать
>>3412231 > Лучше всех отвечает документация. Да. Но в нее не напишешь в свободной форме вопрос, как будто с человеком общаешься, который его осознает и ответит именно конкретно на твой вопрос как ты его задал, ответ на который возможно содержит куски из разных частей документации, плюс просто логику, плюс всю инфу, которую модель из инета понадергала и обработала.
И в документацию я не напишу после этого "ну ка, уточни мне вот этот моментик и скажи как оно согласуется с вот этим и этим". Или "я делал похожее в языке Х, расскажи разницу с ним".
Плюс не что не мешает документацию тоже читануть и потом просто непонятные моменты спрашивать.
И я писал конкретно про грок, он меня удивил. Дипсик вот иногда подпизднуть может прям в деталях мелких. Но у меня не прям огромный опыт общения с ними > Еще раз: говноеды заслуживают того говенного блюда которое они жрут. В своем праве. Но нехуй вываливать этот нейропонос сюда под видом каких-то "решений" и "ответов" если вы блядь НЕ ЗНАЕТЕ НАХУЙ правильный ли это ответ. Нахуя мне условно в гугле дрочиться, если вот я беру пишу "объясни что такое load average в Линукс" и он мне за 5 секунд выдаёт ответ, без поиска, без статей с ебучей водой и конкретно то, что мне нужно
>>3412376 Действительно, на кого расчитывали эти мудаки. Дебилы мурриканские, не знают образровательных стандартов вкатунов в 2к25 году.
Не расстраивайся. Чекни пикрелейтед. Дотягивает ли методика обучения и материал? Хорошо ли написано? Нужны объяснения по вопросам в свободной форме от нейросети или от залупы?
>>3412240 А там написано что такое роутер, автозагрузка и объясняется mvc? Все эти документации для тех кто уже шарит в разработке на фреймворках, для новичков это как инструкция к истребителю
>>3412396 Хахахахаха, тебя чего так тригерит нейронка? Это даже другой анон был. Или обидно, что в свое время приходилось по 200 страниц читать, где полезны только процентов 20-30, а я читанув то что нужно и подключив нейронку в процесс обучения освою то же самое в разы быстрее?
>>3412427 Это же ловушка эффективности, которая приведет тебя к замене нейронкой. Знания это иерархическая структура в голове, которая копится годами. Со своим эффективным походом у тебя в голове будут только случайные вершки знаний. Окрошка. Мало того что ты без нейронки не способен ничего сделать, так еще делегируешь ей важднейшую часть своих компетенций. Ты можешь возразить что в любом случае не перегонишь нейронку как калькулятор. Да это так. Но у тебя как специалиста остается способность понимать созданное ИИ. Когда нейронка производит какую-то сложную вещь, ты должен ее понимать. Для этого тебе нужна та самая сложная иерархия в голове. Нет ты не можешь уточнить непонятное, потому что узким горлышком становится твоя некомпетентность. Это как физик инженер попросил бы слесаря с улицы откалибровать детекторы в ускорителе частиц. У слесаря возникла бы тысяча глупых вопросов, на которые пришлось читать кучу учебников по каждому пункту, потому чтосложные знания взаимозависимые - имеют иерархическую структуру.
>>3412427 >освою То есть ты блядь еще нихуя не "освоил", не работаешь, не стажируешься даже, а просто рассказываешь какие-то охуительные истори из своего мянямира?
Бля, так давай по своей мега методе ебашь в плюсы или джаву, пиздуй к ним в тред рассказывай как тебе нейросеть все объясняет четко, нахуй тебе этот низкооплачиваемячй пхп кал.
>>3412462 Тебе пеной изо рта глаза уже залило. >>3412449 > Это же ловушка эффективности, которая приведет тебя к замене нейронкой. Знания это иерархическая структура в голове, которая копится годами. Со своим эффективным походом у тебя в голове будут только случайные вершки знаний. Окрошка. Мало того что ты без нейронки не способен ничего сделать, так еще делегируешь ей важднейшую часть своих компетенций. Никто не писал, что нужно со свисающей слюной набирать в чатгпт "научи меня погромировать на пичипи". Ну вот мне понадобилось Линукс подтянуть, я зашёл на roadmap.sh, там к примеру взял тему про server review, почитал, что они дают, посмотрел пару видео на ютубе, и позаебывал грок какое-то время моментами, которые мне непонятны были. Например про load average. Я задал вопрос так, чтобы мне объяснили что конкретно мне непонятно, мне в хуй не уперлось читать статью по теме где половина будет вода про историю Линукса и прочую дичь, смотреть видео где 80% хронометража вода, и более того всё это может ещё и не ответить на конкретно мой вопрос. А грок взял и ответил именно так как мне надо. Как будто это мой знакомый, который в лине шарит и я могу заебывать его вопросами бесконечно.
Откуда ты взял про окрошку и прочее. Ты либо умеешь обучаться и выстраивать в голове картину происходящего, либо нет ну не то чтобы нет, этому можно тоже научиться конечно. Какой инструмент ты используешь не так важно. Если ты идиот, то тебе хоть лучших менторов дай, ничего не поможет. > Знания это иерархическая структура в голове, которая копится годами И ещё раз, каким боком тут влияет то откуда ты берёшь информацию. Иерархию ты сам создаёшь. Причём тут годы? Какой-то инструмент для обучения типа можно годами использовать, а какой-то нет?
Ей богу, я реально готов поверить, что тут лахта антинейронковая работает
Моя цель получить знания и я использую инструменты, которые мне доступны. Если бы у меня был друг гуру, который не против, что я ему пишу глупыми вопросами и уточняю всё по десять раз, то я бы не использовал нейронку, но у меня такого человека нет, поэтому использую что есть. С какого хрена ментор это хорошо и батя грит маладца, а его искусственная замена, которая хотя бы на каком-то уровне может отрабатывать и при этом доступна всем, это вдруг плохо > Нет ты не можешь уточнить непонятное, потому что узким горлышком становится твоя некомпетентность. Это просто не так. Ответ на непонятное как раз и создаёт компетентность (курочка по зернышку клюёт). Какая разница добыл ты его спросив у знающего товарища, вычитав в статье, в книге, спросив у нейронки. Отличия только в потраченом времени и удобстве
>>3412651 Потому что нельзя на полшишечки изучать. Если ты пишешь бек, ты можешь поспрашивать у гпт девопс или фронтенд. Но придется книжки с кабанчиками читать. Иначе ты станешь очередным кулибиным с доморощеным мнением, над которым будут сеньки с тимлидом хохотать. Если ты гений с IQ 170 можешь конечно попытаться стать лучше, используя только глюкавую нейронку, как основной источник знаний
>>3412651 Общение с ментором тебя тоже многому не научит, если сам не будешь систематическим изучением матчасти заниматься. Если тебе трудно книжки читать уже говорит о когнитивной проблеме. Нейронка ее не решит.
>>3412651 >Моя цель получить знания и я использую инструменты, которые мне доступны. То что ты перепутал говорилку с инструментом получения знаний это ТВОЯ проблема. И все о чем тебя попросили: не делай это проблемой ДРУГИХ.
Буквально выше по треду такой же дрон, ни разу не запускавший симфони пытался о чем-то спорить с человеком, который на нем пишет. На серьезном ебале высирая страничные пасты из своего бредогенератора. Потому что у него полное отсутствие скепсиса и компетенций для анализа ответов. Но блядь почему-то полная уверенность в том что они правильные.
Спроси проффессионального биолога и он скажет что нейросеть несет чушь на тему биологии. Спроси программиста и он скажет что нейросеть несет чушь на тему программирования. Ответы ВЫГЛЯДЯТ правильными. Потому это то что делают текстовые чаты - дают выглядящие правильными ответы.
Проблема не в том что ты используешь нейросеть. О негативных последствиях лично для тебя уже все расписали. Проблема в том что ты не анализируешь критически её ответы. Ты не проверяешь что из написанного правда, а что нет. Что работает а что нет. И когда ты срешь этим говном в свой пет проект до этого никому нет дела. Но.
Да, тут лахта на отрицалове, забей. Ты правильно используешь нейронки, спрашиваешь то что тебе не понятно, конкретно, без воды.
Тебе никто так не будет отвечать и разжёвывать тему как нейронка, всем похую на тебя. Никто ничё тебе объяснять не будет. А нейронка будет тебе разъёвывать как будто рядом с тобой сидит твой персональный ментор и всё тебе объясняет.
Продуктивность от этого повышается в разы. Видимо это и вызывает жопаболь.
Но анон в другом прав, часто по каким-то темам которые не обсосаны в сети нейронка не может дать ответа, потому что у неё тупо нет знаний по этому вопросу. Типа как сделать чё-то там в такой-то либе, а у этой либы поменялись интерфейсы и вся инфа в сети по которой училась нейронка уже протухла.
Раньше просто сохраняли время последнего действия. Кто именно совершил действие определялось по кукисам/сессии, стандартной хуйне, на основе которой раньше логин был реализован.
>>3411928 >>3411950 Спасибо за советы, но основная проблема в том, что у меня в каждом проекте по 200к файлов, которые по Remote - SSH и Remote Explorer сканируются длительное время, поэтому я попробую завтра перевести один проект на Laragon. Ну и помимо файлов виртуалка долго делает некоторые вещи
>>3414044 1) Они же сканируются на серваке, а не у тебя на пеке. При Remote Explorer ты толжен плагин для пыхи на сервере установить в интерфейсе вскод. Там и будет сканироваться. Я работал с большим проектом через мобильный и интернет и все было нормально. Но у тебя вообще локальная сетка. Причина не в ремоут эксплорере. 2) Добать ядер в виртуалку или у тебя совсем слабая пека
>>3414073 Ядро Битрикс24 + свои модули под него, там очень много файлов и папок. >>3414081 Плагин ставил на сервак, там сканировалось, но уж очень долго. Ядер добавлял, но там ещё база весит 50 гигов и всё в целом медленно.
>>3414140 Я использовал PHP Intelephense через ремоут эксплорер в стандартной vm от битрикса. Все нормально. База к сканировнию проекта какое отношение имеет? На компе проц какой? Только не говори i5 - это нихуя не значит. У тебя скорее всего vt-x/d не включен в биосе или проц настолько старый что виртуализации нет
> Ядро Битрикс24 + свои модули под него, там очень много файлов и папок.
Хм. А тебе они прям все сразу нужны? Может просто открывать какую-то нужную тебе поддиректорию?
И ещё мне кажется для этой проблемы уже есть какое-то решение. Какой-нибудь языковой сервер, который держит всё в памяти и к которому можно просто подключиться.
>>3414150 >На компе проц какой? AMD Ryzen 5 5600X 6-Core Processor - 3.70 GHz >vt-x/d не включен в биосе Без включённой виртуализации VirtualBox не запустится, она включена. На виртуалку выделено 4 ядра с загрузкой до 100% и 8 гигов оперативки.
Суть в том, что в проекте очень много всего выполняется на кроне (в случае виртуалки пытается выполниться, 80к агентов), отсюда падения БД и сервака, но крон мне нужен был для задачи. Там и на боевом серваке приходилось докупать большие мощности, так что дело тут в самом проекте.
>Я использовал PHP Intelephense через ремоут эксплорер в стандартной vm от битрикса. Так, а на локалке как это сделать? Вот у меня есть папка на моём компе, что в каком порядке мне сделать, чтобы плагин заработал? В описании плагина нет инструкции и при добавлении локальной папки в workspace я не могу туда поставить расширения через стандартное боковое меню VS кода.
>>3414217 >ответ из чатжпт У вас тут таких долбоёбов не банят? >>3414213 >А тебе они прям все сразу нужны? Они могут понадобится, т.к. в своём коде используется код сразу из нескольких стандартных модулей. Добавлять модули по одному в индекс по одному - пердолинг.
Основной комп на винде, я слышал разработка на пхп лучше под линуксом идет, так как и сервера где он работает на линуксе почти всегда. Да и заебство в уствновке пхп будто подтвержает, что даже разрабом похуй. С линем знаком более менее. Но на комп ставить не хочу, виртуалка заеб. Я вот думаю WSL адекватный вариант?
>>3414044 Я сколько не читаю твои посты никак не могу понять че за хуйню ты исполняешь. Зачем куда-то "подключаться"? Зачем че-то там сканировать?
У тебя должна быть локальная копия файлов проекта. И эти твои локальные файлы монтируются в виртуалку. Нахуя че-то пересканировать в виртуалке, если это ТЫ изменения вносишь.
>>3414232 Так какого хуя их "нету"? Это стандартный процесс разработки в нашей галактике. 1) Есть репозиторий, в котром хранится "код". 2) Есть сервер, на котором должно работать итоговое приложение, не важно реальный или виртуальный. В случае компилируемого языка на сервер попадает исполняемый файл, в случае пхп все файлы проекта.
В любом случае код отделен от исполняемой среды. Он не часть "виртуалки". 99% проектов синхронизируют код через гит, а на рабочем сервере просто получают последнюю версию после окончания разработки.
>>3414259 >>3414227 Мне бы что-то такое, чтобы не привыкать ко всяким штукам типа xamp, а сразу приблизиться к тому, как реальная разработка происходит, чтобы потом не тащить бессмысленные привычки, которые сформируются в работе с такими штуками
>>3414225 Чел. Сейчас 2025 год, открой гугл и набери docker php postgres, там миллион гайдов уже. Ну просто уже невозможно эту хуйню с стотысячный раз читать. Докер - это стандарт, хочешь ты блядь, не хочешь, он везде. Так что уж изволь потратить пару часов и разберись как оно работает.
>>3414264 >как реальная разработка происходит >не привыкать ко всяким штукам типа xamp >не тащить бессмысленные привычки А в чём проблема собственно? Знать много разных штук суть айти же, не получится знать и работать только в одном. Если ты не ленишься в такой базовой вещи, то как ты дальше будешь работать?
>>3414252 Всё так, боевой сервер отдельно, к которому у меня доступа нет и не будет, т.к. я сторонний удалёнщик. А моя копия проекта для тестов, у меня на компе, да. Просто я её поставил на виртуалку, в образ BitrixVM.
У меня стоит WSL (WSL2) Там установлена Ubuntu (по-умолчанию) В Ubuntu стоит git и docker Так же в Windows установлен Docker Desktop, который настроен на работу с WSL Я запускаю VSCode в Windows с установленным набором расширений Remote Development Я подключаюсь к Ubuntu через Remote WSL Открываю нужную мне директорию Делаю там рабочую копию проекта Разработка проекта ведётся в dev контейнере поэтому переоткрываю проект в контейнере Делаю правки, комичу, делаю всю хуйню Затем билдю prod образ с проектом и пушу его в реестр образов Отключаюсь от контейнера, работа завершена
Проект лежит в Ubuntu которая работает через WSL Разработка ведётся в контейнере, который работает докере в самой ubuntu, но можно сделать так чтобы работал в windows
Плюс надо иметь ввиду всякие мелочи типа того что твой пользователь должен быть в группе докера, твои реестры образов должны быть доступны из виртуальной сети убунты под wsl и из самой windows
На Windows да, но слава Богу мой основной рабочий комп на Fedora 40, поэтому кучу пунктов из этого списка можно выкинуть.
Да, разработка в dev контейнерах это база. Ты делаешь проект сразу в том самом окружении, в котором он будет работать на проде. Этим ты сразу решаешь кучу проблем и избавляешь себя и других от кучи гемороя.
>>3414317 Звучит как переусложненная хуй пойми зачем херня.
У тебя есть гит с проектом. Ты пулишь проект себе на свой рабочий компудахтер, который похуй на чем, хоть на винде, хоть на маке блядь.
Когда поднимаешь локальные докер контейнеры, ты монтируешь в них свои локальные файлы проекта. И прокидываешь веб сервер из контейнера себе на хост. Выполнется код в контейнере, а редактируется на твоей рабочей машине.
На боевой сервак код попадает через гит. Либо банальным прямым гит пулом мастера, либо через симлинки, это не важно. Нахуя создавать для этого специальный контейнер? Прямо имаджинирую как разрабы между собой вместо гита контейнрами изменения синхронизируют.
>>3416109 Да. WSL нужен только если докер напрямую на винду не ставится. Контейнеры и виртуалки нужны для ВЫПОЛНЕНИЯ кода. А для разработки и написания вообще похуй на какой оси IDE запущена.
Дев контейнер это всё тоже самое что ты описал, просто удобней.
Насчёт того как попадает в прод это зависит от того как у вас пайплайны устроены. Для небольшого проекта смотри как у меня это сделано.
У меня есть докерфайл, где есть общий стейдж, а так же дев и прод стейджи. Для дев контейнера у меня есть композ файл, где собирается дев стейдж, поднимаются нужные сервисы и я работаю ВСКодом внутри контейнера. Когда я всё сделал и проверил, я просто открываю консольку на хосте, билдю прод образ и пушу его в реестр. Захожу на прод и пересоздаю сервис из нового образа. Всё. Изменения на проде максимально оперативно. Если что-то не так, откатываю на прошлую версию прод образа.
Но это особый кейс когда проект небольшой и ты сам всем рулишь. Сам делаешь, сам деплоишь и т.д.
А когда проект большой то ты от дев контейнера получаешь всё то что ты описал просто удобнее и проще делается каждое действие.
Linux контейнеры не будут работать в Windows без ядра Linux. А его в Windows не существует. Либо ты ставишь Linux через систему WSL, либо на виртуалку на Hyper-V. Docker будет брать ядро Linux оттуда, запуская Linux. То есть некий пердолинг будет в любом случае.
Я быстро стартую. Просто открыл VSCode, выбрал проект и нажал кнопку Reopen in container. Всё запустилось и открылось. Все сервисы подняты, все вкладки открыты, порты проброшены и т.д. Если бы этого не было надо было бы открыть консоль, перейти в директорию с проектом, запустить оттуда VSCode, потом набрать docker compose up -d чтобы всё завелось.
Я открываю терминал в контейнере в одно действие. Мне нужно открывать ещё одну консоль, набирать там docker compose exec хуёмоё bash. Я просто нажал F1 и тыкнул в меню. Консолька открыта в контейнере, можно набирать команды.
Пробросы портов работают в одно нажатие кнопки. Открыл панельку, ввёл порт, он пробросился. А иначе надо было бы открывать композ файл, добавлять туда настройку, удалять контейнер, пересоздавать его, ой ошибка этот порт занят, ну давай другой.
Ты не запариваешься над тем что у тебя может чё-то в окружении не так или чё-то куда-то не коннектится. Ты себе всё сконфигурил один раз и работаешь и каждый раз всегда будешь оказываться в одной и той же среде.
В общем это Github Codespaces только у тебя дома.
И ещё момент то что у меня в той же VSCode есть Remote SSH и я могу всё это делать ещё и с удалённым проектом.
>>3416151 >Я быстро стартую. Просто открыл VSCode, выбрал проект и нажал кнопку Reopen in container. Срать не снимая свитер. Если тебе нужно запустить контейнеры, то нет никакой разницы кто выполнит docker compose up, ты сам или Reopen. Все равно придется ждать. Все равно все сервисы будут подняты и порты проброшены.
>Если бы этого не было надо было бы открыть консоль, перейти в директорию с проектом, запустить оттуда VSCode Каво? Просто открыл vscode, выбрал нужный проект и работаешь. Какая нахуй консоль, какая нахуй директория?
>Я открываю терминал в контейнере в одно действие. Я тоже. Тыкаю в меню и коннекчусь к нужному контейнеру.
>Пробросы портов работают в одно нажатие кнопки. Открыл панельку, ввёл порт, он пробросился. А иначе надо было бы открывать композ файл Пчел, а как ты думаешь, зачем проброс портов прописывается в композ файле? Ну и к тому же такое бывает раз в год и то не каждый год. Порты при написании композ файла такие и выбираются чтобы не конфликтовать.
>Ты не запариваешься над тем что у тебя может чё-то в окружении не так или чё-то куда-то не коннектится. Ты себе всё сконфигурил один раз и работаешь и каждый раз всегда будешь оказываться в одной и той же среде. Так. По этому и работают с докером. Это не повод запускать IDE внутри контейнера.
>И ещё момент то что у меня в той же VSCode есть Remote SSH и я могу всё это делать ещё и с удалённым проектом. Вот в этом случае это имело бы смысл. Только вот работать ты будешь через RDP, и коннектиться не куда-нибудь а к пекарне, которая в офисе стоит, потому что так безопасники сказали. И это пытка ебаная, никому не рекомендую.
>>3416151 А вот о минусах ты не сказал. Во первых: контейнер - это виртуальная среда, которая по умолчанию менее производительна, чем хост машина. Во вторых: контейнер должен быть как можно более легковесным, в идеале distroless или alpine, в котором даже vim'а нет, потому что он не нужен для выполнения кода. В третьих: никаких локальных доработок внутри контейнеров быть не должно. Их основная задача - быть одинаковыми везде. Есть еще, так называемый "docker way", по которому в контейнере должен быть только один рабочий процесс, но это devops фетиши, хуй с ними.
Короче, разработка внутри контейнера = использование контейнера не по назначению. Контейнер не для этого создается. У него совсем другие задачи и ограничения.
Так я и не спорю что "можно и иначе", просто то что я описал - удобнее и ряде моментиков. Но это не прям какая-то киллер фича. Я и так и так работал.
Просто у тебя в пхпшторм этого не завезли. Ты от этого потерял, но не особо. Дев контейнеры это простая штука, ты верно описываешь что всё можно повторить руками.
Вообще идея дев контейнеров у них пошла от remote мне кажется. Когда они придумали что vscode подключается к удаленному хосту, скидывает туда и запускает там компактный vscode server и ты работаешь с ним как будто в браузере. Получилось оч удобно и они решили почему бы не сделать тож самое с контейнером.
Ты не разобрался что такое разработка в контейнере. А насчет производительности вообще не прав. Производительность там одинаковая с хостом, за исключением моментика с вирткальной сетью, но разработка в контейнере тут не при чем.
Ты ведёшь разработку не в том контейнере который будет развёрнут на проде, а просто в таком же, но в котором установлены дополнительные вещи типа дебагера, композера и тд. Когда ты закончишь разработку то соберёшь прод контейнер где ничего этого не будет. Сборка дев или прод версии контейнера у тебя в одном докерфайле, просто в разных стейджах.
>>3416251 >А насчет производительности вообще не прав. Производительность там одинаковая с хостом Ну да. Так и ставили бы тогда на все пекарни гипервизор, а ось как виртуалку. А то ебутся с какими-то UEFI, шиндовс с флешки устанавливают.
>Когда ты закончишь разработку то соберёшь прод контейнер где ничего этого не будет. Сборка дев или прод версии контейнера у тебя в одном докерфайле, просто в разных стейджах. Че дальше в лес... Нахуя все это городить? Ради чего? Нахуя собирать контейнер если у тебя композ файл не поменялся?
Короче велосипедная залупа. Так никто не делает. Я понимаю что каждый дрочит как хочет, но не надо рассказывать что дрочить в присядку - это норма.