Также, у нас есть задачи которые позволят тебе изучить или подтянуть до нормального уровня знания JS/HTML/CSS/SQL. Решай их параллельно с задачами выше.
- скачать учебник: зайди на https://github.com/codedokode/phpbook, нажми зеленую кнопку Code -> Download ZIP, распакуй на рабочий стол и открой index.html - что будут спрашивать на собеседовании, если 0 опыта - будут гонять по теории, по официальному мануалу PHP, давать дурацкие задачки на переворачивание строк, гонять по SQL (транзакции, внешние ключи, напиши запрос), по JS (как сделать анимацию при нажатии кнопки), ну погугли, не ленись - сколько времени надо изучать все это? - все зависит от тебя, в районе 24-48 месяцев
>>3254960 По своему опыту, чатгпт плохо подходит для вопросов с контекстом. Например, когда у тебя есть проект, тебе нужно принять какое-то решение и тебе нужно сообщать не только об окружении проекта, но и часть бизнес-логики, чтобы он дал тебе совет. И то - совет может быть хуйня.
>>3254961 Дэ. Меня позабавило, что когда начался шум с художественными нейронками, начали плодиться как грибы курсы в стиле "оператор нейросети". А насчет программирования с нейросетью, я хз, что там за алгоритм у пхпшторм, но как я же я кайфую с его подсказками (угадывает контекст метода, свойства по другим свойствам, предлагает замену на более лаконичное выражение и т.д.). Самая любимая IDE из всех, которые я пробовал.
>>3255125 Сколько еще миллиардов вечнозеленых надо влить в нейронки, чтобы они помнили контекст на нормальном уровне? И не генерировали шизу, если не знают ответ.
Почему интерфейс объекта ничего не говорит о его реализации? Например, параметры методы - это не часть реализации? То, что метод обязательно принимает строку как аргумент под именем name, это не часть реализации? Прост видел определение реализации как то, что даже атрибуты объекта это часть его реализации. Или тут смешение контекстов? Есть реализация объекта - его защищенные и приватные атрибуты и методы, а есть реализация как алгоритм выполнения какого-то метода?
>>3255199 Интерфейс - это контракт. Объект, реализующий интерфейс обязуется что-то сделать или вернуть определенные данные, если ты отдашь определенные параметры на вход метода.
> То, что метод обязательно принимает строку как аргумент под именем name, это не часть реализации? Нет, потому что, наблюдая снаружи, ты не можешь узнать, что происходит с этой строкой на самом деле. Может, она действительно где-то используется. Может она просто логгируется. А может, она вообще игнорируется, и реализация сама генерирует себе строки. > атрибуты Уточни, что имеется в виду под атрибутами. В php у объектов есть поля, которые принято называть свойствами, и методы. Атрибуты в php - это метаданные, аналогичные аннотациям в джаве. https://www.php.net/manual/ru/language.attributes.php
>>3255220 Спасибо за ответ. >Нет, потому что, наблюдая снаружи, ты не можешь узнать, что происходит с этой строкой на самом деле. Может, она действительно где-то используется. Может она просто логгируется. А может, она вообще игнорируется, и реализация сама генерирует себе строки. Звучит убедительно. Под атрибутами подразумевал свойства объекта.
Дети запомните: круды и залипание в философиию ООП вас доведут до нищеты. В пыхе это каргокульт компенсирующий отсутствие достойных задач. Лучше ориентируйтесь на бизнес проблемы и технологии, чем на дрочь философии чистого кода.
>>3255252 >ориентируйтесь на бизнес проблемы и технологии Например на такую технологию как битрикс? Без знания ее, сложилось впечатление, что невозможно найти работу.
>>3255255 Например на такую технологию как битрикс. Или стать спецом по эластику. Или ниндзей по постгресу. И выпячивать свое конурентное преимущество везде где только можно и за счет этого жить. За счет ООП можно только на пхп книжках заботать, но не на пыхопроектах.
>>3255258 >За счет ООП можно только на пхп книжках заботать Еще один угашенный. Какие нахуй заработки на книжках? Че ты несешь то блядь вообще? Кому ты нахуй че выпячивать собрался полудурок солевой?
Тебя блядь на собесе на любую пхп вакансию от 150к будут спрашивать одно и тоже: ооп, солид, паттерны. Какая нахуй ниндзя по постгресу, олень ебаный? Если берут дба, то ты там на пхп вообще писать не будешь.
Какой хуебес блядь, реально очко аж сгорело нахуй. Какие нахуй конкурентные преимущества, дауненок? У тебя форма резюме на хх, которая должна автофильтры хр пройти блядь, чтобы его вообще живые люди открыли. Ты либо апплаишься на вакансию с битриксом и у тебя резюме чисто под битрикс, либо под то на что апплаишься и там никаким битриксом не воняло нахуй.
Просто нихуя не одупляющий в теме еблан, несущий несусветную поебень.
>>3255266 Знанием ООП уже не удивить. Да, это обязательные знания, но это не те знания, которые могут выделить тебя из толпы. Сейчас в резюме "знаю ООП" могут (могут в смысл "мочь", а не "соответствовать") написать как человек, который просто умеет объявлять классы, так и человек, который старается разбираться в ОО-концепциях.
>>3255269 Зы. Нормальными кейвордами для резюме в нормальную компанию явряются постгрес, еластик, кролик, кубер и прочее У ж точно не солид, и преречисление всех паттернов.
>>3255276 На какую вакансию долбоебушка? Ясен хуй на жс макаку никаких нахуй солидов не надо, на го на всю эту ооп дрисню поебать, может и на петухоне. На пхп без этого не будет ни одного собеса. Открой блядь ютуб и посмотри выложенные туда собесы. И все, хуйню не неси.
>>3255280 >>3255282 Пчел, это походу ни дня не работал. Ты будешь писать так как от тебя требуют. Может в пяти процентах случаев тебе и скажут: похуй пляшем, пиши как хочешь, вообще поебать. Но в девяносто пяти ты будешь нормально проектировать код или пойдешь на улицу.
Вообще человек, недельный код которого несколько человек ревьюило, такой хуйни не напишет. Самый большой спрос с тебя будет не от начальства, а от команды.
>>3255290 Достаточно писать разумно. SOLID хорошо изучить и применять по мере возможностей и в рамках здравого смысла, а не как 10 заповедей. Все это может только с практикой прийти.
Что касается специализации на технологиях это совет не ждунам, а на будущее. Там так и было сказано. Не залипать на чистоте кода, а учить технологии и проблемы бизнеса. Естественно это через собесы не работает. Собесы для людей с улицы.
>>3255292 Собесы на стажера? Кто сеньку будет про солид спрашивать если по умолчанию предполагается что он лет 10 код пишет? Буду интересоваться как он задачи бизнеса решал и какими инструментами. Типичная ситуация в конторе. Хочет контора на кубер переехать, нужно спеца который расскажет стоит ли постгрес в кубер пихать или нет. И никто из текущей команды ничего разумного не скажет. Потому что все "спецы по солиду".
>>3255299 Тупорылый хуесос-фантазер, специализирующийся на битриксе. Речь шла о том как ты, солевое уебище, будешь на работу устраиваться. И в резюме, и на собесе по пхп, ооп дрисня это обязательный пункт. Нет блядь вариантов вместо навыка писать нормальный код на ооп языке предъявить навык настройки постгреса.
И нет блядь в пхп сфере никаких особых специализаций. Ты либо садишься писать ооп код с командой, либо у тебя ДРУГАЯ ПОЗИЦИЯ блядь, и к пхп коду тебя не подпускают.
Только не говорите что в пыхоконторе на 10 разрабов есть специальный девопс, который 100 технологиях разбирается. А пыхаре они же спецы по солиду и чистой архитектуре. Это ведь для бизнеса так важно...
>>3255311 В пыхоконторе есть отдел девопсов и отдел сисадминов и их начальники никакого хуесоса со строны ковыряться в своем хозяйстве не пустят. Так же как и тимлид твой команды не дас жс макаке срать в его прод.
>>3255307 Какая другая позиция? Позиция пишем код на ларке, как на ларке принято. Решаем текушие задачи. Разгребаем легаси. Не запутываем код. Делаем по возможности расширяемо. Да где надо стратегии. Да где надо декоратор. Вкатуну это все блядь на одном нормальном петпроекте на ларке можно освоить.
>>3255320 >Мы ж про пыхо контору говорим? В душе не ебу что такое пыхо контора. В любой крупной организации есть сайты и веб сервисы, и то и то может быть написано и пишется на пхп. Это нихуя не означает что там все на пхп пишется, может они вообще блядь андроид приложения продают, а на пхп у них пишутся црмы и опредни для персонала.
>>3255324 Это был совет куда расти. Да знания постгреса и эластика в в нормальной пыхоконторе решающие чтобы стать лидом или сенькой ключевым. А не чистые архитектуры. Нету в пыхоконторах 10 девопсов. И тем более понимающих, к примеру, как сделать платформу для паралельного парсинга с тысячами запросов в секунду.
>>3255329 Ну ты внатуре со шприцом в вене там сидишь, объебышь? Все блядь так и делают - нанимают специалиста по эластику чтобы он не админил эластик, а тимлидом на совещаниях сидел? Или блядь чтобы он за зп тимлида админил эластик? Ты просто рандомную хуйню высираешь сюда?
>>3255338 Объебышь, то что ты называешь "специализацией" это просто смена профессии. Не сидит блядь толковый девопс на пхп вакансии, потому что девопсу платят больше. И не сидит дба пхп программистом, потому что он в рот ебал эти солиды, его язык - это баш и sql.
Никто тебе не говорил что быть тимлидом хуже или лучше, чем рядовым программистом. Тебе рассказали что действительно важно чтобы устроиться на ВАКАНСИЮ ПХП ПРОГРАММИСТА БЛЯДЬ.
>>3255347 А что блядь по твоему "знания эластика"? Умение тюнить перфоманс и ебаться с индексами. Короче я правильно угадал - ты просто срешь рандомной хуйней, смысла которой не понимаешь.
>>3255352 Нет нормальных программистов без навыков девопса. Ты не сможешь спроектировать продукт, если не знаешь как эластик работает. И не можешь понять нужен он тебе или нет, например в том же парсере. Он ведь не только для поиска в магазине дилдаков используется
>>3255357 Хуй тебе не поможет быть незаменимым в ит конторе. А лишние знания по крайней мере не помешают. А вот чистая архитектура это не знания. Это философия. Играет роль только здравый смысл.
>>3255358 Кукеретическая солевая поебень, нахуя тебе "быть незаменимым в ит конторе"? Ты приходишь под проект на год, максимум два, получаешь опыт + строчку в резюме и уходишь на вакансию с +N% зп. Ты эту лечку про незаменимость и КАРЬЕРУ В КАМПАНИИ в кино увидел? Нахуя я вообще на такое чучело время трачу, пизда.
>>3255360 Ох уж эти сказки про хождения по конторам c x2. х2 бывает только пару раз, если первый раз за еду устроился. Лидом ты так не устроишься. Лидом предлагает кабан стать. Уж точно не за знания СОЛИДА.
>>3255371 То что спрашивают на собесах к устройству на работу не относится, а то что не указано в требованиях к вакансии относится. Понял тебя, солевая поебень. На этом свой пиздежь сворачиваю.
Что нужно знать про Apache, чтобы спокойно добавлять его к себе в резюме? Что я могу относительно апача: Установить апач с их сайта; Настроить файл конфигурации; Знаю, что такое .htaccess. Как видите, я знаю ровно нихуя. Какие темы нужно разобрать, чтобы не стыдно было говорить, что я умею работать с Apache?
Моя реакция, когда кто-то называет эту книгу хорошей или советует ее. Максимально водянистая книга, повествование которой обо всем и одновременно ни о чем.
>>3255983 + тошнит, что кому-то нравятся книги "дяди Боба": также максимально водянистые и советы уровня "чтобы писать хороший код - пишите хороший код".
>>3255983 Действительно достойные книги у линейки книг Head First. + много практических знаний; + авторы дают материал, начиная с основ, таким образом, знания наслаиваются одно на другое и формируется систематическое представление о предмете; + авторы действительно хотят тебя чему-то научить; + авторы понимают что такое когнитивная нагрузка и выдают материал постепенно.
>>3255985 Открываешь так нахваленную книгу "чистая архитектура", предвкушая преисполниться интересными знаниями, а потом читаешь пик. Вангую, что соевые читатели наоборот скажут, что нет же! так наоборот читается веселее, как будто читаешь не книгу про программирование, а легкое чтиво!
>>3255990 Со мной что-то не так? Ну, почему эти книги кому-то нравятся? Почему их кто-то советует? Куча воды, поверхностное обсуждение предмета, отсутствие систематического подхода. Это каргокульт?
>>3255991 Карго культ возникает когда человек верит в то что существует некий правильный, законченный алгоритм написания идеального кода. Он ищет что кто-то ему скажет: вот инструкция, делай так по шагам и будет заебись.
И когда он находит такую инструкцию, он начинает бездумно её воспроизводить, цепляясь к мелочам и веря в силу закорючек. Он не знает почему эта инструкция такая, какая есть, он верит что если её воспроизвести, то прилетит самолет получится идеальный код.
Для вкатунов это особенно характерно. Хули вы мне тут чешете про структурное программирование, вы мне откройте свой секретный алгоритм из пяти пунктов, с помощью которого вы все свои программы пишете. Вон бля у поваров есть точные рецепты, у столяров все по шагам, по полочкам. Слесарь изучает конкретные вещи и получает следующий разряд.
В том то блядь и сложность, что нет такого алгоритма. Нет никакого секретного рецепта. А твой код - это в первую очередь состояние ума. И книги эти ценят за то что они помогают организовать башку, а не за алгоритм создания табуретки.
>>3255985 Мартин и Фаулер известные инфоцигане. Они не закомитили ни одной строки в прод, зато десятилетиями раздают охуительные советы "делайте хорошо, плохо не делайте".
>>3254950 (OP) Если речь идет о MVC и нужно отправить запросв БД, а потомпреобразовать данные в нужный формат (или правильней сказать поместить данные в нужные поля), тогда я правильно понимаю, что: 1) Запрос в БД и параметры к запросу SELECT, FILTER и т.д. пишутся в моделе: 2) А уже помещение результатов из запроса в нужные поля результирующего массива происходит в контроллере? Это, если что Битрикс, но прошу, ответьте адекватно
>>3255985 >>3255990 >>3255991 К популярности Мартина действительно есть некоторые вопросы. Допустим принцип SOLID в чистой архитектуре описан не так, как его понимают большинство хотя справедливости ради об этом сам Боб и писал в книге. В Single Responsibility Principle у него описаны Акторы и что нужно учитывать их, разделяю логику под каждого Актора. Комично выглядел один известный блогер, который в своих уроках хотел объяснить, что такое SOLID, нахваливая Боба Мартина, говоря какой он царь и даже держа в руках книгу "Чистая архитектура". При этом он проигнорил то, что написано в книге, и начал говорить популярное мнение у модуля должна быть только одна причина для изменения. И ты такой: Падажиииии, мне тут все затирают, как Боб хорош, но при многие даже не знают, что в оригинале он этот принцип объясняет по другому даже вопрос по этому поводу задавал, многие тупо не понимали о чем речь. Помоему только Оп местного треда если он еще здесь, пытался ответить на вопрос. Остальные забили. И ты такой думаешь, тогда какая версия правильная?
>>3256302 >Акторы Любой разработчик, кто хоть раз пытался разобраться в ебаном месиве из логов, проклял эту модель. Опытные придумали саги, нет, не хочу. Хочу пукать в кафку и чинить баги на ночных дежурствах, ведь покрыть юнит тестами эти хуякторы невозможно в принципе.
"Если пользоваться наследованием осторожно (некоторые сказали бы пра-вильно), то все классы, производные от некоторого абстрактного класса, будут обладать его интерфейсом. Отсюда следует, что подкласс добавляет новые или замещает старые операции и не скрывает операции, определенные в родительском классе."
Может кто-нибудь привести код как скрыть операции, определенные в родительском классе? Если это возможно в php.
>>3256445 Или это выражение просто постановка перед фактом, а не требование к тому, что кто пишет код? Кажется, что так, но зачем делать акцент на этом?
> Допустим принцип SOLID в чистой архитектуре описан не так, как его понимают большинство хотя справедливости ради об этом сам Боб и писал в книге
Справедливости ради, он эти принципы изначально и ввывел. Не хочу сказать что "придумал", но они именно от него пошли именно в такой комбинации и в контексте промышленной разработки .
> "у модуля должна быть только одна причина для изменения"
Мартин не против этого определения. Он объясняет по-другому потому что объяснение и определение это разные вещи. Определение должно быть максимально коротким, ёмким и однозначным. Объяснение может занять целую часть книги. У него так и занимает
>>3256512 >Определение должно быть максимально коротким, ёмким и однозначным. Объяснение может занять целую часть книги. У него так и занимает Хорошему определению не нужны объяснения. Просто люди: - Сами не могут до конца отрефлексировать то, что они поняли; - Не могут найти такие слова, которые точно бы описывали найденное ими; - Не могут найти такие слова, которые были бы понятны другим людям.
>>3257117 Еще люди чато путают понимание и узнавание. Когда повторяешь прочитанное в другом источнике, возникает ощущение, что ты это знаешь. В мозгах закрепилась связь, но она неюзабельна для деятельности. Не можешь применить - не понимаешь. Не можешь объяснить - непонимаешь.
>>3257117 >Хорошему определению не нужны объяснения.
Это так не работает. Вот тебе определение интеграла. Математику здесь всё просто понятно и однозначно. Но если человек в 10ом классе учится и впервые сталкивается с интегралом, то ему вот это написать и спросить "ты понял?" не вариает. Нужно объяснять на примерах.
Объяснения нужны чтоб обучить кого-то новым знаниям. А определение нужно чтобы отделить понятие от других понятий.
Блять, зачем я даже привожу какой-то пример с интегралом. Вот тебе то как Барбара Лисков сама дала определение своему "принципу".
Вот ты смог бы просто прочитав это всё понять? Если да то нахуя тогда тебе вообще книга Мартина. Просто увидел определение, понял, и не тратишь время читая примеры из жизни МартЫна
>>3257137 Пчел. Это определение вообще ни о чем не говорит. В дополнение к этому определению идет куча правил, под общим названием "Поведенческий полиморфизм".
Причем эти правила напрямую никак из определения не следуют. И при всей "математичности" определения, в отличии от настоящей математики его математичность на себе самом и заканчивается. Нельзя продолжить математические рассуждения и вывести из этой формулы, например, ковариантность, то есть одно из основных следствий этого "принципа".
Как итог: "Принцип подстановки" и "Поведенческий полиморфизм" это на самом деле зонтичные термины для большого списка правил, связанных между собой не математическими формулами, а скорее формально, по отношению к одной проблеме - невозможности в ооп наследования некоторых важных аспектов поведения.
>>3257137 "Пусть q(x) является свойством верным относительно объектов x некоторого типа T. Тогда q(y) также должно быть верным для объектов y типа S, где S является подтипом типа T".
"Принцип подстановки Лисков - принцип, согласно которому, если у нас есть класс A и отнаследованный от него класс B, то если мы заменим все использования класса A на B, ничего не должно измениться в работе программы, ведь класс B всего лишь расширяет функционал класса A, а не замещает".
Какое определение больше нравится?
Как по мне, с точки зрения обучающегося, Барбара Лисков обосралась, дав максимально убогое определение, на которое хочется один раз взглянуть и тут же забыть.
Я хочу сказать, что есть хорошие определения, есть хуйня определения. Хорошее определение читаешь и сразу же или скоро понимаешь что хотел сказать человек. Если ты создаешь определение, а большинство людей разводят руками или устраивают холивар что же ты все-таки хотел сказать, то ты обосрался со своим определением.
Определение выше, если что не мое, но оно гораздо лучше определения Лисков. И у меня не было цели сесть и тут же определиться с идеальным определением этого принципа.
>>3257214 LSP не только про классы и не только про наследование. Он про то, что контракты актуальные для T должны соблюдаться в S. Даже если эти контракты явно не описаны в коде.
Например, нарушением LSP будет ситуация, когда для Т важно, чтобы он не оставлял побочных эффектов своей работы, но его подтип S их оставляет. Или когда для Т важно укладываться в определенные лимиты по времени или памяти, а S их пробивает.
Взяли стажором в контору посадили за макбук, дали мне здороввй список ссылок и курсов мол проходи, учись, программировай а там верстка я бля криворукая хуйня сижу тут как фуфел блятам ещё битрикс я в ахуе
>>3257691 Терпи. Такова участь любого кодерка. Можешь потом как на удалёнку уйдёшь купить себе стол регулируемый, чтобы периодически работать стоя. Делай зарядку ежедневно, ходи пешком час в день, спи нормально, не нервничай, побольше терпи, ешь нормально, не ешь хуйню вроде бп или чипсов, не пей енергетики никогда, не пей алкаху, не кури, не читай новости, асбтрагируйся от реального мира, расслабься щавелем если возможности позволяют.
>>3257617 кстати я спросил а почему мак именно а не винда или линукс мне сказали просто мол винда заеб линукс заеб а конкретно ничего не сказали в чем суть мака
>>3257960 Потому что ВСЕ, довыебывались. Сидели в своем болоте, верещали: Мулленвег наш! Вардпресс ето и есть интернет!
Ну дождались, епты. Выбили табуреточку. Мулленвег дал - мулленвег взял. Теперь 60% интернета будет на жабоскрипте, а пхп макакам провели по губам и их ждет еще большая стагнация и гораздо более быстрое забвение, чем они себе фантазировали.
>>3258066 Ну даже если и так. Дальше по твоему че будет? Наняли кучу джаваскрипт макак и почти весь новый код теперь пишется на жабаскрипте... хммм... Ну тут явно блядь признаки того что пхп туземун, щас нахуй попрут вакансии ебать. Или может оставшееся пхп говно потихоньку перепишут на жабаскрипт понос, а оставшихся пхп говнокодеров выпнут на мороз?
Хватит коупить боевыми картиночками. Пхп в бекэде жив ровно до тех пор пока на тайпскрипте не наебашут популярный аналог ларавеля. И тогда пхп кал смоет мгновенно, и начнется битва за бекэнд жабаскрипт говна с петухон мочей. И тут уж я ставки делать не берусь - хуй знает куда вкатывается сейчас больше деградантов и пицценосцев.
>>3258128 >Ну даже если и так. Дальше по твоему че будет?
Да ничегло блять не будет. На бэке пишут апи, фронт на реакте. Даже в пхп мире.
> Пхп в бекэде жив ровно до тех пор пока на тайпскрипте не наебашут популярный аналог ларавеля
Ну блять пусть пишут. Пока там только говнище не операбельное. По сути пыха лучший варик из php/node/python братии.
Да типа уступает go/java, но там немножко разные сегменты рынка. Джава немножко не для малого бизнеса. Го тоже можно соснуть. На го имеет смысл переписывать когда пыха уже не справляется, но:
1) Пыха справляется всё лучше, 2) До этого ещё дожить надо чтоб пыха не справлялась.
>>3258266 на ноде быстрее + статический анализ более развитый можешь даже не спорить, писал на том и другом + с микросервисным подходом пыха сосет, потому что там воркеры с асинхронностью и мультитредингом нужны с развитыми инструментами синхронизации, а не оопешный жабокаргокульт. Для асинхронности нужен нормальный ивент луп и нормальная стандартная библиотека под него типа asyncio
>>3258261 >Ну блять пусть пишут. Пока там только говнище не операбельное. По сути пыха лучший варик из php/node/python братии. Хуипутало, какая нахуй "node братия" блядь? Речь шла про TYPESCRIPT сука. Это компилируемый язык общего назначения, там есть и ооп и функциональщина и строгая типизация и дженерики. На нем блядь VSCode написан, с которым тут шизики бегают. По сравнению с пхп это блядь ламборгини и запорожец нахуй. Тайпскрипт ближе к жабе и шарпу, чем пхп параша. Это блядь по сути клон шарпа для джаваскрипт макак.
Вот такие кретины и думают что пхп стронг? Он даже не одупляет что у фронтендеров уже давно вместо ванильного жс сблева продвинутый язык энтерпрайз уровня, в развитие которого миллиарды въебаны. Да я заебусь перечислять список фич, по которым тайпскрипт прямо блядь сейчас лучше для бека чем пхп кал. Какой же тупой долбоеб.
>>3258618 >Хуипутало, какая нахуй "node братия" блядь? Речь шла про TYPESCRIPT сука. Это компилируемый язык общего назначения, там есть и ооп и функциональщина и строгая типизация и дженерики.
Ставишь на пыху псалм и вот тебе типы и дженерики, чел.
А ещё в пыхе можно включить строгую типизацию и получить типы в рантайме.
> Он даже не одупляет что у фронтендеров уже давно вместо ванильного жс сблева продвинутый язык энтерпрайз уровня, в развитие которого миллиарды въебаны
Продвинутость - это когда КОСТЫЛЯМИ в JavaScript добавили те штуки которые были в ActionScript(Flash) в 2006?
>>3258640 Значит ты не понимашь что такое компиляция в контексте статического анализа. Это не про генерацию машкода ШОБ БЫСТРО БЫЛО. Это пруф корректности кода. Пока ты не напишешь правильный код, ты не получишь работающий рантайм. Все или ничего. Правда тайпскрипт слишком уступчивый в этом плане и еще от конфига компилятора зависит.
У меня есть контроллер, экшен которого создает новую сущность. Я использовал этот экшен и в веб маршруте и в апи маршруте. Все работает, но меня волнует то, что как-то нужно детектить в экшене контроллера что запрос пришел по апи и отдавать json ответ вместо html. Пишу в ларавель.
>>3258637 Еще раз, дегенерат. 1. Typescript гораздо ближе к java, c# и go, чем php. Это блядь факт. 2. Фичи, которые в нем есть в пхп спиздят через годы, а дженерики походу никогда. 3. Он не сожрал бекенд нишу пхп только потому что пишут на нем дегенераты, которые не понимают какой алмаз им подарили. Фронтенд ебанаты натурально ноют что им компилятор срать в штаны мешает и хотят типы в аннотации переносить. 4. Весь этот пхп пердежь закончится как только появится фреймворк, который как ларавель позволит фронтенд полуебкам в джва клика генерить круды на бекэнде. Быстрый рантайм и сервер у них уже есть.
>>3258681 >Учитесь читать исходники Ты, конечно, молодец, что читаешь исходники. То, что ты мне скинул, разве это то, что мне нужно? Запрос по апи не обязательно же AJAX или я чего-то не понимаю?
>>3258699 1) Запрос из жса это аякс по определению 2) Я скинул пример как в ларке устроена по дефолту проверка аякс или не аякс Если ты из бутстрап.жс не удалил строчку с добавлением заголовка в axios то метод реквеста ajax() должен работать 3)Если делаешь запросы fetch то добавь заголовок X-Requested-With: XMLHttpRequest самостоятельно
>>3258733 ПС С двумя эндпоинтами и выделением сервиса для получения данных тоже может быть говнокодность. Типичная эволючия кода 1) Делаем две ручки для / и /api Получаем список клиентов из репозитория. Красота 2) Надо к клиентам добавить статистику их обращений. Делаем SQL мегапортянку в репозитории 3) В админке нужен раздел с клиентами, статистикой обращений и статистикой платежей. На сайте статистика платежей не нужна. В апи статистика платежей только при авторизации. Делаем композицию из сервисов и репозиториев вместо одного репозитория. У каждой ручки свой сервис, который зависит от сервисов с общими данными 4) Блять долго страница сайта открывается, надо кешировать статистику обращений 5) Блять админка тормозит. Надо кешировать статистику платежей и обращений. 6) Блять в апи нужны актуальные данные. Не надо кешировать статистику 7) Блять удалите из апи статистику сделайте отдельную ручку
>>3258839 Классика. Джуны пишут микросервисы. Достаточно было просто оптимизировать sql запросы, а не пердолить 100500 сервисов каждый со своей базой. Для снижения нагрузки использовать шардирование, ведь юзер Вася не видит платежи юзера Пети, значит, их можно разнести на разные железные сервера. Кеширование - это вообще зло, там всегда получается лютый пиздец.
Нужно выводить свойства объекта в представлении (ларавель). Как лучше? Добавить все-таки геттеры (+ т.к. для меня геттеры зашумляют код, я хотел бы вынести их в трейт, норм тема?); Сделать метод, который возвращает ассоциативный массив с значениями нужных свойств.
>>3259575 Eloquent объекты сами по себе выполняют роль view model. Что мешает получать значения через $record->property? Если хочешь меньше магии, лучше использовать другую ORM.
>>3259966 >Бэк при этом пишется на языках для бэкенда типа go, php, java Бля, ебанько, тебе русским языком говорят что пхп отличается от джавы БОЛЬШЕ чем тайпскрипт. А если разобраться, так он эту джаву по функционалу обогнал давно.
В тайпскрипте есть все чтобы писать почти любой код, в любом стиле. 1) Асинхроннность? Есть промисы, есть асинк авейт, есть треды, есть корутины. ЕСТЬ ВСЕ. 2) ООП? Есть классы, есть интерфейсы, трейты, дженерики, области видимости. ЕСТЬ ВСЕ. 3) Функциональщина? Есть монады, есть функторы, функции как типы, каррирование. ЕСТЬ ВСЕ. 4) Чистый код? Есть строгая типизация, есть компилятор, есть модульность, тесты, линтеры, фиксеры. ЕСТЬ ВСЕ.
На фоне всего этого изобилия пхп как бедный, горбатый, хромой и кривозубый родственник. Достаточно просто посмотреть на реализацию иммутабельных объектов, например, или коллекций. Какие коллекций? А бля, да... в пхп же нет нихуя никаких коллекций из коробки, а иммутабельность ты давай как-нибудь сам корячь. Зато в пхп есть массив (который нихуя не массив) - коробка с сюрпризом, каждый раз открывая можно получить в подарок охуительный баг.
На тайпскрипте прямо сейчас можно делать все то же самое что и на пхп, только быстрее и с большим комфортом, так еще и дохуя того чего в пхп нихуя сделать нельзя. Все это жо сих пор не пишется только потому что контингент это тупорылые фронтенд макаки, для которых это ваш бек и это ваше ооп это сложна.
Но как только им дадут простой инструмент, который большую часть работы будет делать за них и они почуют себя охуительными бекэндерами, тогда все. Ни один долбоеб не станет нанимать себе каких-то отдельных бекэндеров, просто будут брать пачку тайпскрипт макак, которые будут хуярить все.
>>3260055 все так, только вот я за полтора года работы в галере ни разу не видел что бы фронты себе ts затаскивали в проект без серьезной необходимости и пары дней обсуждений этого вместе с тим лидом. Why is this, bro?
Работяги наносеки, на чём вы работаете? т.е. кодите. Щас пробовал поставить пхп и mysql на линукс убунту и минт. Короче пропердолился целый день.
бесконечные sudo get-apt install
Постоянно чего-то нехватает и что-то на что-то ругается. И это при чистой только что поставленной Mint/Ubuntu!
Я теперь не верю что кто-то на линуксе РАБОТАЕТ. Я год назад страничку авторизации на пхп делал. Короче на винде всё JUST WORKS. Я не помню чтобы вообще какой-то пердолинг был. Я просто НЕ ВЕРЮ теперь что на линухе кто-то что-то реально делает. Кроме линуходебилов которые сидят на линухи чисто ради сидения на линухе и ковыряния в нём
>>3261080 Какой дистрибутив линукс? Убунта? Минт? Поп? Что вообще у пхпшников в ходу. Ну хорошо, WSL у меня уже стоит. Ну так ведь чтобы настроить его для работы с пхп будет точно такой же пердолинг как и с виртуалкой на линухе или с отдельным компом на линухе. Всё те же бесконечные sudo apt get install когда как даун сидишь чё-то скачиваешь пока оно не перестанет ругаться.
>>3261086 >>3261079 Я даже пытался пердолиться через homebrew. ОН ТОЖЕ СУКА НЕ РАБОТАЕТ ИЛИ РАБОТАЕТ НА ПОЛ ШИШЕЧКИ
пишешь brew install php и тебе вылезает какая-то хуита что надо установить сначала curl, git и т.д. Устанавливаешь ты всё это и эта хуита заработала! потом пробуешь другую команду и опять стена текста из ошибок. Это просто пздц. Я пробовал и на виртуалке это всё делать и на отдельном ноуте.
>>3261097 Какой у тебя линух? Дистрибутив. Подскажите пожалуйста дистрибутив линукс чтобы я мог на него накатить homebrew и через homebrew уже накатить пхп и mysql без часового пердолинга
У тебя может индекс пакетов протух. Или у тебя у апта зеркала настроеные не работают нормально. Часто минт этим грешит, так как он предлагает локальные зеркала выбрать и можешь рандомно хуйню выбрать которая не обновляется. Особенно если ты в Азии сидишь. Там что-то как-то долго обноляются зеркала.
перед установкой делай sudo apt-get update чтобы индекс обновить
другая причина ты мог апт сломать подключив кривой ппа и установив оттуда что-нибудь что привело к конфликтам
друга гричина ты во время установки пакета установку прервал и у тебя зависимости не доустановились.
>Кроме линуходебилов которые сидят на линухи чисто ради сидения на линухе и ковыряния в нём Я минималист. Мне кроме браузера, видеопроигрывателя и торрентов почти ничего не надо. Я не играю в игры. Максимум читаю телеграм и пишу в ворде документы. Меня всё устраивает, не ебёт мозги винда лицензиями, антивирусами и прочей хуетой.
Здравствуйте, мой вопрос по теме уеб-безопасности.
Вот есть в Вордпрессе файл страницы front-page.php и допустим там есть html код: <h1>Последние новости</h1> <a href="какая-нибудь ссылка"> Смотреть все новости </a>
Я пиздец как хуево понимаю уеб безопасность, поэтому объясните плес надо ли текст внутри тегов санитайзить или эскапировать? Типа так написать? <h1><?php echo esc_html('Последние новости') ?></h1> <a href=<?php echo esc_url('какая-нибудь ссылка') ?>> <?php esc_html('Смотреть все новости') ?> </a>
Вот чат жпт говорит что обязательно надо эскапировать это всё.
Но я не понимаю вообще нихуя. В результате чего в тегах захардкоженный текст может измениться? Типа хакер в админку залезет? Ну тогда блятб ему эти эскапирование тоже не помешает, он его удалит ровно точно также как исправит текст.
>>3261337 Экранировать нужно пользовательский ввод. Если ты выводишь на страничке, например, $post->content, который ввел пользователь, экранирование стоило бы применить, т.к. недобросовестный пользователь мог вместо содержания поста ввести что-то вроде <script>.
Если ты выводишь на страничке обычный текст, его не обязательно экранировать.
>>3261366 Спасибо огромное, я просто совсем не понимаю уеб безопасности и такой ахуел и подумал неужели есть способ как-то не взламывая админку взять и поменять хтмл разметку. Спасибо большое.
Я увидел следующий пример в интернете: $untrusted_input = '1 malicious string'; // will evaluate to integer 1 //during loose comparisons
>if ( 1 === $untrusted_input ) { // == would have evaluated to true, but //=== evaluates to false echo 'Valid data'; } else { echo 'Invalid data'; }
И я обнаружил, что если изменить на == и получить if ( 1 == $untrusted_input ) { // == would have evaluated to true, but //=== evaluates to false echo 'Valid data'; } else { echo 'Invalid data'; }
То всё равно будет выводиться 'Invalid data' и оказывается нюанс в том, что == дает 'Invalid data' - это в ВОСЬМОЙ ПЫХЕ.
А если поставить пыху седьмую, то == дает 'Valid data'
>>3261474 Приведение типов может отличаться от версии к версии, поэтому не стоит полагаться на наблюдаемое поведение. Лучше всего пользоваться строгим сравнением.
Ты наткнулся на префиксную числовую строку. До восьмерки их использование было легитимно.
>>3261595 Пиздоглазое хуипутало, не читающее тред, речь шла о >Приведение типов может отличаться от версии к версии, поэтому не стоит полагаться на наблюдаемое поведение.
>Пошел нахуй. Приятно слышать, в следующий раз можешь не рассказывать куда ты пошел.
>>3261629 Справедливости ради, в документации описано некоторое стандартное поведение при кастинге значений с обещанием не изменять его без предупреждения.
>>3254950 (OP) По поводу MVC. Я создал метод, который делает запрос в бд. Затем я создал второй метод, который преобразует данные из запроса первого метода. Дополняет его другими полями при помощи Related сущностей и т.д. Грубо говоря мне нужно получить информацию о товарах. Я делаю запрос в БД, Потом я привожу некоторые данные в правильный вид. И еще добавляю новые поля. Так вот, второй метод был избыточен или нет? И еще вопрос, нужно ли как то объединить два этих метода в один? И последний вопрос. Где все эти методы, включая объединенный метод, нужно поместить? В модель?
>>3261687 Учись составлять лаконичные вопросы с достаточным условием, в противном случае будет сложно получить какой-то ответ. Тем более корректный. Да и банально уважение к чужому времени. Из твоего поста неясен контекст, в котором твой вопрос мог бы иметь смысл. Общий ответ: получение данных и преобразование данных - это две разные логики, которые следует отделить друг от друга.
Тема привидения типов скипается всеми психически здоровыми людьми, игнорируется, насмехаются и используется только строгое сравнение.
Пхп считают говном из-за говнокодеров из нулевых которые клепали сайты на коленке, без базовых рефлексов анальника, из-за которых я тебя и обссыкаю сейчас. В настоящее время, пхп нормальный бекенд язык, а говнокодеры это волочащийся за ним мем как и ежегодное его умирание.
>>3261761 Ну че, психически здоровй хуипутало, >>3261793 вот это тоже из нулевых? Это типичный представитель, как и ты кстати. Вы друг друга стоите.
Да просто на этот тред посмотреть - это же магнит для кретинов. Несколько лет назад были хоть минимально адекватные люди, а сейчас вот такие вот. Все что просочилось сначала через нормальные языки, а потом через петухон и вротенд. Отборные. Как на подбор. Один методы в mvc пересчитывает, другому чат жпт говорит, а он эту хуйню сюда тащит.
Тут хоть один кто реально вкатывается в это парашу остался? Или только шизики с ежедневной шуткой про битрикс?
>>3262592 Конечно, стоит, учи JavaScript и PHP, даже мелкий проект будет хорошим для резюме. Стоит делать всё, что хочется, плохо, если ничего не хочешь делать. А про PHP, я ни разу не троллю, уверен, что можно найти первую работу за 70-80к! Завидую тем, кому работать не надо, можно посвятить сколько захочешь разработке!
>>3262624 >А про PHP, я ни разу не троллю, уверен, что можно найти первую работу за 70-80к! Главное верить, а то получится история как у этого чела >>2727117 (OP)
>>3262707 Как это работает? Вот условно я полгода поработал по профилю, до этого по околоит хуйне работал примерно столько же. Ну, допустим, спиздану, что на прошлой работе тем же занимался, получается год. А как дальше крутить? Научите, плиз...
https://youtu.be/5xD58G-d2Jc?feature=shared Почему меня возбуждает этот мужик? Его голос, его видео, его личико. Интересно, какой у него член? Какие же красивые мальчики среди php разработчиков! Я гетеросексуал, если что.
>>3262754 Перед собесом поставь рамку, будто ты уже откликнулся на жирный оффер, но спустился к ним с небес, чтобы посмотреть, предложат ли лучше. После этого не должны спрашивать, а наоборот, будут вылизывать тебе пяточки, чтобы задобрить.
>>3262760 -Блин, вы такой классный, мы готовы вам предложить 9999$, осталось только получить от вас электронную трудовую с 10 годами опыта! Сможете в течение трех дней отправить? -Аэаэаээаэа Как этого момента избежать то?... СБ везде есть.
>>3262769 Твоя задача сделать напиздеть так, чтобы решение о найме приняли во время собеса, а не после. Если решение уже приняли, то тебе поверили. А то что там хрюша увидит потом в трудовой, это ни на что не повлияет.
Правильно ли я понял, что синтаксис со стрелочкой используется потому, что в переменные на самом деле присваиваются указатели на объект, а не сами объекты? То же самое есть в С++, где синтаксис с точкой используется для объектов, а синтаксис со стрелочкой - для указателей на объекты.
>>3265064 Наоборот он ближе к бизнесу, к кабанчикам, наберет себе постоянных заказчиков и будет жить поживать независимо от кабана, а ты все время будешь боятся увольнения.
>>3265064 Не сказал что боюсь так сильно. Но перед новыми людьми всегда теряюсь или волнуюсь. В целом люди раздражают, утомляют, отвлекают. И я не люблю жать руки. Грязные! Буэх >>3265074 Чёт мда. Куда ниперекатывай: а везде надо на подскоке и со всеми трындеть Если знал что так в будущем произойдёт, шёл бы в шизы на постоянку. А в силу возраста никаких дипгнозов не ставят выше лёгкой депры и тревожности
>>3265344 ДА. Разработка бека для веба на винде - это как ездить на вот такой детской машинке с педальками. Да - едет, есть руль и педали, но до настоящего авто с любыми костылями не дотянет. С девом для фронта, для мелкомягкой экосистемы - наверное пойдет. Но для бекенда веба - костыльно.
Конечно будет. Разработка под линуксом связана с меньшим числом хуйни, потому что запускаться на проде это всё будет под линуксом. А все эти docker for mac и wsl всегда дырявый кал. К тому же, 90% знания докера это знание как в линуксе чет сделать. Dokerfile будет проще писать и тд.
Где писать бизнес-логику в ларавель? Там есть модели, но из-за того, что ларавель жестко делает их active record, мне не хочется писать бизнес-логикой в них. Пока что создаю собственные классы, отдельно создаю TDG, чтобы сохранять в БД, а внутри методов TDG использую QueryBuilder.
>>3266503 Ну ты и говнокодер необразованный. Все знают что бизнес логику нужно писать в контроллерах. А в моделях нужно передавать приветы комментариями на японском, срать геттерами и писать sql запросы.
>>3266620 Хуйни не неси. Маняоправдания - сначала написать чушь, а потом оправдываться тем, что "собеседник задает глупые вопросы", зачем ты перекладываешь ответственность за свой глупый ответ на меня?
>>3266635 Ларавел и архитектура вещи несовместивые как масло и вода. Пиши как все делают - анимичную архитектуру. Модели ларавела как шлюз к бд. Для изоляции кода бизнес логики от моделей и кверибилдера - репозитории. Бизнес логика (БЛ) в сервисах. Сервисы с БЛ самая абстрактная часть. Поэтому сервисы должны зависить только от интерфейсов. Контролеры - конкретная инфраструктура. Занимаются валидацией и передачей дтошек в сервисы. Сервисы валидацией реквестов не заниаются. Они только ассерты могут делать согласно БЛ.
Это то что в рядовом лакопроекте бывает. Для проектов на ларке обычно этого хватает с головой. Оверпроектированием на пыхе только вкатуны занимаются из-за фрустрации что не попали в серьезный проект.
>>3266635 Где я написал чушь? Все по пунктам расписал. Тебе просто почему-то не понравился мой ответ, хотя ты сам признал что нихуя в вопросе не понимаешь.
>>3266568 Котаны, посоветуйте каких-то туториалов по этому вопросу. Чтобы я не писал хуйни в учебном проекте, его же все таки кабану на собесе показывать буду. Пушто я только не давно узнал, что не следует срать в контрллерах
>>3267973 >Адекватно ли сейчас работать фуллстеком Каким фуллстеком блять? Долбоёбина лесная, вы совсем поехали на этих англицизмах. Испокон века это называлось ВЕБ-РАЗРАБОТЧИК!
>>3268144 Фулстек - это не веб-разработчик. Это такой ебаный человек-оркестр, jack of all trades, который одной рукой правит разметку, другой дописывает ямлы. Получается всегда полная хуйня.
>>3268149 >Всегда В программировании понятие хуйня очень субъективная вещь. Да и как много зависит от опыта и интеллекта. Ты можешь быть специалистом по одной библиотеке и все равно обосраться перед каким-нибудь прошареным "фулстеком".
>>3268149 >Фулстек - это не веб-разработчик. Это такой ебаный человек-оркестр Не пизди. Какой оркестр? Ты чё долбоёб? С каких пор "сделать сайт" приравнивается к оркестру? С какой стати чтобы сделать один сайт нужно два человека? Тем более давно есть фреймворки типа next.js, где и то и другое можно на одном языке писать. Типа компоненты я писать могу, а тут сразу ой всё, у меня лапки, я не бекендер. Хотя и там и там typescript. Истории охуеть просто.
>>3268173 Просто ты долбоеб который делает сайты визитки или инет магазины за 30к руб в регионе, в офисе на окраине города, где один заказ раз в 2 месяца. Так конечно ты разоришься нанимать еще и фронтендера. Но рыночек тебя убьет, пидорас, если не хочешь платить
>>3268268 Не моя проблема, что ты не хочешь больше учить. Ты ограниченный, видимо для тебя выучить базы данных - это сверхзадача. Не значит, что другие не хотят иметь широкий кругозор. То есть любой не полу-специалист, кто может сделать больше половины сайта в одиночку - он автоматом делает визитки и лендосы за 30к? Ну это чисто твоё мнение чувак. Все должны узкоспециализироваться как ты хочешь, только учить красить кнопки и делать слайдеры и ничё больше. А если он почитает что-нибудь про бекенд, то он уже говнодел.
Допустим, хочу написать онлайн-проигрыватель музыки. Лучше передавать треки на клиент через гет-запрос по http средствами серверного приложения, разбирая поток jsом, или просто не запариваться и кинуть всю музыку в публичную папку и клиентскими скриптами указывать лишь путь до файлов? Насколько рабочий вообще первый вариант, если мне не нужно разбивать файл на части для быстрой загрузки налету и дрм?
>>3268418 Первое - долбоёбский подход. Всё нахуй зависнет. Пхп же не асинхронный язык. Если одно работает, то второе работать не будет. Если только это не какой-нибудь swoole и ты не создаёшь дополнительные процессы.
Второе - тоже долбоёбский подход. Файлы должны быть на CDN. У сервака не бесконечный интернет-канал. Если это ссылка на какое-нибудь облачное хранилище, то окей, тогда будет работать.
>>3268490 >не по-долбаебски сделать Это будет явно не на пиэчпи. Ну вот ты сделаешь php-fpm, поставишь max children 8, к тебе подключатся десять человек. Из них двое получают 504 gateway timeout. Скорее всего хуёвое немасштабируемое решение выйдет.
>>3268528 Ну я в общем и не на пыхе, просто тред нуб-френдли. По сути пока кроме бд, серверного яп с микрофреймворком и js еще ничего не знаю. Подумал попробовать склеить это все, но, видимо, еще рано. Сейчас паттерны ковыряю чтобы масштабируемо писать, а как на практике организовать все это не читал да и не знаю где.
>>3268760 Я засекал и вкатился писать бэкенды на laravel за 70 дней от начала изучения и до устройства на работу. Сразу на удалёнку с зп 60к. За плечами был 1 вузовский курс айтишного направления и несколько самостоятельно пройденных книжек общего назначения.
Был очень заряжен. Учился с утра до вечера по 8-10, иногда больше, часов. За все время успел разобраться с докером, впитать котерова и зандстру, написать примитивный микрофреймворк на собственных компонентах и собрать несколько готовых крудов на ларе с rest api и с ssr. Также прошел учебник кантора по js и сверстал несколько страничек на флексогридах и бутстрапе.
Полагаю, на вкат в битрикс у меня ушло бы недели две или меньше, лол. Сложилось впечатление, что там водят за ручку и требуют разве что не быть совсем дегенератом.
>>3258276 Пиздеж, либо большая удача. Во-первых, вакансий стажера и джуна мало. Во-вторых, на ряд вакансий требуется опыт коммерческой разработки минимум год. В-третьих, во многих вакансиях неплохие требования: js, html, css, docker, mysql/postgresql, git, linux, архитектура, ооп, паттерны и принципы, фреймворки, js фреймворки, composer, REST API. За 2 месяца норм объем? В-четвертых, 90% вакансий в офис.
>>3269416 > За 2 месяца норм объем? Я себе все доказал и действительно за два месяца освоил это все на уровне достаточном для найма. Причем в первую же неделю поиска получил два оффера.
На контрасте битрикс выглядит как примитивный инструмент, который за два месяца осваивается в спокойном, а не моем запойном, темпе. Ещё и ментора дадут, который за ручку проведет.
Первое. Если бы у кого-то был адекватный материал, упакованный для непрерывного изучения на 8 часов x 70 дней, то нахуй какое-то там программирование - тупо продажа такого курса миллионы бы принесла.
Твой прокол в том что не существует методического материала ни такого объема, ни такой интенсивности. Это уже не говоря про сам процесс обучения. "Пройденные книжки" это конечно в голос. 90% IT литературы это СПРАВОЧНЫЕ материалы, их не читают как беллетристику перед сном и уж тем более не "проходят".
Надо было писать "прошел пару курсов", можно добавить "спизженных". В эту хуйню больше вариантов поверить, чем во вкатуна, который восемь часов сидел гуглил че ему следующие тридцать дней "изучать".
Второе. Раз уж взялся пиздеть, потрать пол часа чтобы выяснить что квалификация вкатуна давно уже не коррелирует с полученными офферами. Будь ты хоть трижды гений - автофильтры проходишь не ты, а резюме.
Твой прокол в том что ты не знаешь что проблема не в получении оффера, а в приглашении на собес. Когда количество откликов движется к пятиста, даже с пиздатым резюме это лотерея - вас там таких с правильными резюме будет под полтинник.
Надо было писать "посмотрел на ютабе гайд и грамотно напиздел в резюме" и "все три собеса за месяц прошел четко, дали два оффера".
Вот тебе методический материал как грамотно срать в пхп треде. Обрати внимание, даже если ты очень внимательно изучишь эти советы, то я поймаю тебя на пиздеже в чем-нибудь еще. Это к твоей байке про 8-10 часов. Жопочасы и даже качественный материал не компенсируют недостаток информации.
>>3269637 > продажа такого курса миллионы бы принесла Я подумаю, лол. Спасибо за идею, но пока просто поделюсь, что было. Возможно кому-то поможет.
У меня было представление о том, как работают веб-приложения, и я методично шел к тому, чтобы самому реализовать. Неделю потратил на то, чтобы разобраться с докером и собрать себе среду nginx-psql-php. Если интересно, могу скинуть конкретный курс. Хотя мне кажется, что они все примерно одинаковые. Неделю потратил на талмуд котерова от и до. Индексировал в голове, потом много к нему возвращался. Еще неделю потратил на книжку зандстры по ООП. Оттуда нахватался по верхам паттернов. Тоже много возвращался
Дальше я поставил себе цель написать микрофреймворк для крудов по всем psr'ам, которые было актуально воткнуть. Начал с написания простенького DI-контейнера. Далее на неделю отвлекся позубрить постгрес на https://www.postgresqltutorial.com/ и написал примитивную data mapper ORM. Продолжил обретками над http и конфигами. Впилил event loop также. Роутер сделал через два миддлвейра, один из которых матчил маршруты, второй передавал запрос в контроллер. В процессе много обращался к Зандстре и читал чужие исходники. Также много пользы вынес из этого видео. https://youtu.be/pz6VdH4_BSg Компилятор шаблонов не писал и обошелся встраиванием <?php ?> тегов. Вьюшки заверстал примитивные на флексах и гридах. Итого ушло недели 2-3 где-то.
Еще некоторое время потратил на то, чтобы пробежаться по доке ларавеля и написать два круда. Один с вьюшками на бутстрапе, второй под REST api. На JS по кантору ушла неделька.
Красиво описать это все в резюме труда не составило. В сопроводительных письмах писал, что несмотря отсутствие коммерческого опыта работал с командой друзей над веб-сервисом для личных нужд. Это было правдой, но в реальной жизни опыт сводился к написанию простых js-модулей, чтобы dom-дерево править
Тем не менее разослал, видимо успешно прошел фильтры, походил по собесам и получил два оффера, из которых выбрал продуктовую компанию.
Снова заподозришь во вранье, но первой же задачкой на работе дали разобраться с DDD и с чистой архитектурой. :D Недели за две осилил трилогию дяди боба, еще неделю потратил на iddd.
Произошло все, кстати, не абы когда, а весной этого года. С весны продолжаю постоянно учиться, поднаторел и теперь пишу микросервисы для задач компании. Доволен как слон, планирую разобраться за следующий год со нюансами написания и развертывания приложений и запустить один собственный проектик, идея для которого уже год зреет, но навыков пока не хватает.
Буду рад, если ты, умный, подскажешь мне, куда я мог бы развиваться дальше, чтобы начать синьорить побыстрее.
Но я опять-таки просто был очень заряжен. Мне не составляло труда учиться с пробуждения и до тех пор, пока мозг не перестанет справляться с информацией. Допускаю, что человеку со средними мотивацией и способностями пришлось бы потратить больше времени.
>>3269653 Ой все. Горшочек не пизди вари. Я когда про курсы говорил я имел ввиду пиздеть про это когда-нибудь потом, не прям щас же.
И завязывай пиздеть про книги. "Осилил", "потратил". Какая же хуйня. Ты че в школе не учился? Имаджинирую ебало училки по математике, если бы к ней кто подошел и сказал: давай завязывай пиздежь, я тут осилил твой учебник за этот год на прошлой неделе, вы тут хуйней своей занимайтесь, а я кароч погнал физику осиливать. Про универ даже и упоминать не стоит, там-то с такими фантазерами обращаться умеют. Поколение тиктокеров. Совсем забыли что такое книга и как по ней учатся. Так не знаешь - не пизди. Нескладно получается.
>В сопроводительных письмах писал Эту залупу никто не читает.
>несмотря отсутствие коммерческого опыта Этот пиздежь совсем никуда не годится. У тебя либо указан в резюме коммерческий опыт, либо твое резюме не проходит автофильтр.
>Тем не менее разослал Двойка, совсем хуевый пиздежь. Куда ты че разослал? Купил у бабки на блошином потертый сиди с базой для рассылки? Хуй знает, как там у вас в викторианской англии, а у нас в 2324-ом все это делается через отклики на хх.
>Снова заподозришь во вранье Про работу просто какая-то хуйня написана, даже разбирать лень. Типичная проблема вкатунов - они тупо не представляют себе командную работу т.к. никогда в таком режиме ничего не делали.
Ну и так по мелочи всякая ерунда глаз режет, типа роутера через миддлвейр. И лечки про чистую архитектруру, на которую уже несколько лет как всем похуй.
>>3268764 >засекал и вкатился писать бэкенды на laravel за 70 дне >>3269455 >Я себе все доказал и действительно за два месяца освоил >>3269653 Спасибо за подробную информацию, я сам вкатуджон в пхп Битрикс. Ажно с 2к16 года начал учить пхп по книге Робина Никсона где голая пыха без фреймворка и самый примитивный скл описывается. С тех же пор начал учить жс, хтмл, цсс, рякт, вебпук. И так и не вкатился спустя ВОСИМЬ лет!!!
По мотивам твоего поста хочу сделать петушинный прыжок. И тоже за джва месяца вкатиться в Битрикс. Но так как я на дно работе ишачу 6 дней в неделю по 12 часов за 22к в месяц. То поставлю себе срок х2 в размере 4 месяцев. Поставлю себе задачу вкатиться к концу январских праздников числа так 10го.
>>3257999 Так, падажии, ёбана. Вордпрессники в статье говорят, что превращают бек в формализованное апи, чтоб потом его как-то заменить на серверную JS реализацию. Это всё здорово и очень интересно, но от такой инициативы разом отваливается весь тот зоопарк плагинов, за который вордпресс в принципе и любят. Звучит, как выстрел в хуй.
>>3269889 За то что это кривая уебищная хуйня для дебилов, мимокрокодилов и обычных кежучей, а не программистов. Которая взлетела вопреки всему и лезла в энтерпрайз.
>>3269887 Потому что по своей архитектуре он отличается от других языков (хотя все его недостатки покрывают сторонние тулзы). Он был создан в качестве шаблонизатора, чтобы можно было с помощью стороннего веб-сервера генерировать простые html-странички. Его виртуальная машина загружается на каждый поступающий запрос, а после отдачи ответа умирает. В его ядро встроены массивы, содержащие данные о поступившем запросе. В силу этого, его использовали все кому не лень, без знаний и опыта. Поэтому и писали на нем как попало.
Если есть опыт, то PHP может быть хорошим инструментом. Он сочетает в себе простоту, высокую скорость работы виртуальной машины (самый быстрый из скриптовых языков), если использовать его с помощью swoole, workerman, peachpie, etc, то можно добиться производительности веб-приложений сравнимой с самыми быстрыми Go фреймворками (если на стандартной библиотеке, то Go проигрывает), на нем можно писать с классами и интерфейсами, функционально.
>>3270445 >Со swoole пыха равняется с дефолтной нодой по перформансу, но не с голенгом. Ты сказал? Нода на моем компе выдает 20к rps, а workerman 120к rps, peachpie выдает 200к rps. Swoole не мерил, но он примерно будет как workerman. Нода из коробки слабенькая. У нее плохо написан сетевой стек. Вот с uwebsockets.js нода выдает тоже 120к rps, я мерил.
>>3270445 Сейчас го на стандартной библиотеке стал по-быстрее чем раньше был, но если он и быстрее чем swoole и workerman, то не сильно. И уж точно он не быстрее peachpie, который на .net, а писать го не просто, очень угловатый язык.
>>3269887 >Сап, за что в большинстве тредов ненавидят пхп? Ненавидят не столько сам язык пхп, сколько додиков которые заказывают сайты на пхп и исполнителей, которые пишут на пхп. И те и другие - лютые мудаки. Одни не разбираются в веб-разработке, но заказывают быдлосайты. А другие хуй ложили на качество. Одни и те же технологии используют по 20-30 лет. Все новые проекты/стартапы обходят пхп стороной. А те кто не обходят - это либо фонатики пхп, либо им просто по барабану что разрабатывать, либо бы платили хоть сколько. Есть вон те, которые пишут в тредах "посоветуйте язык, без разницы какой, лишь бы просто вкатиться и 60к зарабатывать". Вот это целевая аудитория пхп.
>>3270466 >Одни и те же технологии используют по 20-30 лет. Все новые проекты/стартапы обходят пхп стороной. В Китае много пишут на PHP. Есть куча крутых опенсорс проектов на PHP, написанных китайцами.
>>3270473 >можно на сишорпе писать В нем нельзя нормально писать в ФП-стиле, а по другому на нем не получается лаконичный код. F# хорош, но .NET не полностью его поддерживает.
>>3270476 Пчел, на пхп тоже нельзя писать в фп стиле, там тупо вообще нихуя для этого нет. Ни каррирования, ни монад, ни нормальной системы типов. Тебе в пхп чтобы супертип создать надо либо наследоваться, либо интерфейс имплементировать. Охуительное фп.
>>3270493 >Пчел, на пхп тоже нельзя писать в фп стиле, там тупо вообще нихуя для этого нет. Есть нормальные функции высшего порядка. Все остальное реализуется. Главная ценность ФП в том, что все является выражением. Это позволяет писать понятный декларативный код очень коротко без лишних церемоний, а в языках типа C# бесконечный бойлерплейт.
>>3270497 Бля, маня кукаретическая, ну реализуй на пхп каррирование https://3v4l.org Нахуй ты рассказываешь про ценность фп, это и так все понятно. А непонятно где ты увидел что на пхп "нормальнее" писать в фп стиле. Откуда ты это высрал вообще? Банально монаду maybe на шарпе с дженериками с десять раз проще реализовать. Как это на пхп будет выглядеть я даже имаджинировать не хочу.
Да ебана, ты вообще понимаешь что в пхп ты не можешь указать сигнатуру функции как параметр? В шарпе ты можешь задать конкретную сигнатуру void FunctionCaller(Func<string, int> myMethodName) {...} А в пхп ты можешь написать только function functionCaller(callable $function): void {...} Какая нахуй функция должна быть передана? Да хуй пойми. Ошибки в логах чекай. Декларативно и ценно проведено залупой по губам. Эту хуйню уже невозможно нормально читать, а если сюда наворотить функции возвращающие функции, то будет вообще охуеть.
>>3270476 А есть хоть какой-то нормальный пример, где это ваше функциanalьное программирование зароляло? Какой такой проект, написанный в ФП стиле обогатил создателей? Это ваше ФП выглядит, как какой-то карго-культ аутистов-девственников без друзей, которых хлебом не корми, а дай подрочить на чистые функции.
>>3270466 >посоветуйте язык, без разницы какой, лишь бы просто вкатиться и 60к зарабатывать А что такого? Когда до людей дойдет, что не обязательно любить свое дело, важно быть терпеливым и иметь совесть. Если тебе похую на программирование, но ты совестливый человек, то ты будешь учиться писать правильно код.
Подскажите зеленому, нормальный подход? Есть кнопка на html, при клике на нее открывается форма для редактирования информации. Я хочу сделать так: Клик по кнопке => js отправляет fetch на сервер, чтобы тот ответил, аутентифицирован пользователь или нет. Сервер отвечает, что пользователь не аутентифицирован (например, нет валидного jwt токена в куке). js показывает div с формой для пароля. Ничего не проверяет. Сервер принимает пароль, проводит аутентификацию, ставит куки. И так по кругу. Норм тема такого общения js и сервера?
>в пхп ты не можешь указать сигнатуру функции как параметр Зачем?
>с дженериками с десять раз проще Чем проще? Они требуют указывать тип, это уже не позволяет реализовать даже Identity function. Основа ФП это именно функции высшего порядка. С их помощью можно реализовать что угодно.
>>3270529 >Если ты такой умный, почему ты бедный? Это не аргумент. Как раз так называемое ООП является чистейшим карго-культом. Любая программа это всего лишь функция из X в Y. Программа идеально ложится на ФП. В ООП же куча ненужных фич. ООП пытается решить те же задачи, что и ФП, но решает их очень криво, привнося кучу проблем, поэтому и требуются всякие паттерны. ФП решает лаконично. В ООП приходится писать кучу лишнего бойлерплейт-кода. Та же абстракция данных с помощью ФП делается элегантно малым количеством кода, а в ООП кода получается намного больше и выглядит это коряво, в том числе потому, что функции в ООП не являются объектами первого рода.
>>3270600 Посмотрел 8 минут и сразу же какая-то мешанина. Сервер аутентификации отдает RT, а не JWT+RT или JWT. Потом RT обновляется по RT, хотя там другая система - JWT истекает, по RT обновляется и пользователь получает новые JWT и RT.
>>3270617 Нет мешанины. Примерно так SSO сервис для SPA приложений Auth0 устроен. Все это не противоречит стандартам OAuth и OpenIdConnec. Основные тейки видео 1) RT в хттп онли куках. Не доступен из жс. 2) RT устанавливается сервером аутентификации при успешном логине с фронтенда. 3) Сервер аутентификации желательно на отдельном домене. Поэтому RT автоматически отправляется браузером только на сервер аутентификации и никуда более 4) RT может обмениваться на RT и JWT 5) RT может обмениваться на RT только один раз, после чего блеклистится сервером аутентификации 6) RT используется только для обмена токенами между фронтендом и сервером аутентификации/авторизации. RT не истользуется для выполнения действий на ресурсном сервере 7) RT долгоживущий 8) JWT используется только ресурсным сервером для выполнения действий от имени пользователя 9) JWT короткоживущий 10) JWT живет в памяти жс и дожен явно в коде отправлятся на ресурсный рервер (дополнительный CSRF токен не нужен) 11) кражу JWT можно пофиксить принудительным получением новых JWT клиентами сбрасыванием соли на сервере аутентификации/авторизации
>>3270649 И пунктов вытекае еще, и в видео об этом явно не говорится, что получение JWT из RT должно быть корсами защищено. Причем фронтенд который делает обмен находится на другом домене чем сервер аутентификации. Это должно быть учтено.
>>3270512 Ну круто, че. Реально без шуток, отличная идея. Есть только два нюанса. Первый: это нам че каждый раз все это городить придется для своих функций?
А второй найди сам. Он гораздо более важный и всю твою конструкцию, при всей её оригинальности, лишает смысла.
>>3270604 >куча ссылок на кал Никто и не говорил что это невозможно, я хотел посмотреть как ты этим говном пользоваться будешь.
>Они требуют указывать тип, это уже не позволяет реализовать даже Identity function. Основа ФП это именно функции высшего порядка. Вот тут я и проиграл нахуй. С кем я блядь спорю. Парнишка, который сам каррирование написал >>3270512 в сто раз лучше тебя понимает о чем речь идет.
А я думаю откуда вылез этот истеричный обоссанный кукаретик. Причем в перманентном режиме "ФП крута", хотя никто с ним тут об этом не спорил. А он вылез из под шконки, куда его после обоссывания забили пинками аноны в другом треде. Давай колись, петуч, ты же нихуя никогда не писал в ФП стиле, ты просто решил выебнуться в каком-то треде ооп языка, а тебя там попустили без смазки?
На чистое ФП через жопу ложится. Без состояния, на чистых функциях можно реализовать что угодно в том же смысле в котором на брейнфаке можно написать что угодно. Не практично.
>>3270718 В пхп вообще дохуя че можно. Можно в функцию с одним параметром передать десять https://3v4l.org/obJcT И хули теперь? Пользоваться этим говном как? Нахуя самому себе жизнь усложнять?
>>3270742 Пчел, ты типизацию проебал. Твой метод делает хуй поми что, непонятно что принимает, непонятно что возвращает. А пхп еще и начнет то что он высрал автоматически конвертить.
Привет мёртвый тред мёртвого языка. Мне интересует как в более менее норм компаниях ловят баги с продакшена? Пример. Предположим что есть какие-то данные которые либо высчитываются на проде не так или вообще на каком то этапе обработки вызывают 500 или в этом вроде. И притом там есть куча таблиц куча куча связанных данных и ещё пара очередей, микросервисы и прочее. Как это локально оотлаживаете и чините?
>>3270861 Бля, мудила, из чего следует что эта функция IDENTITY? Она возвращает хуй пойми что. Как мне блядь выбрать из десяти функций именно identity?
Всем привет! Я начал проходить миникурс, закрепленный в шапке треда, но, увидев посты некоторых анонов, мне стало немного страшно. Те, кто пишет всякие плохие слова про слоника и его будущее, это гнусные вруны или же в их сказаниях есть доля правды?
>>3271010 Все хорошо, можешь спокойно учить. Только учти, что язык - это просто инструмент для решения какой-то задачи. Есть большая разница между тем, чтобы знать о возможностях фрезерного станка, и тем, чтобы знать, как с его помощью создать какую-нибудь прикольную штуку.
Php - это инструмент, удобный для создания веб-приложений, поэтому в первую очередь стоит разобраться, как они вообще устроены. Суть не в циклах, классах, и других конструкциях, которые есть во многих других языках.
Php будет актуален, пока существует запрос на дешевую разработку и быстрый запуск веб-приложений. Кроме того, разработчики языка работают над тем, чтобы код можно было не только быстро писать, но и проще поддерживать. Когда же php всё-таки перестанет быть актуальным, зная принципы построения веб-приложений, ты всегда сможешь перекатиться на другой стек и заниматься примерно тем же самым.
>>3271591 >Что такое fetch запрос? Запрос, который отправляет js на сервер. >В каком формате ты возвращаешь данные? json >Кто будет использовать этот роут? js (js отправляет запрос, чтобы получить ответ от сервера и изменить DOM страницы).
>>3268418 Зависит от того, хочешь ли ты делать треки публичными. Если клиент сначала должен быть залогинен - лучше не делать файлы публичными. Подскажи, зачем тебе разбирать поток в json? Просто верни mp3 файл. браузер загрузит файл и запустит звук.
>>3272441 >Откуда ты знаешь эти моменты? Из личной практики. Первый - когда я писал самодельный парсер xml, он тупо подвисал на время чтения, потому что не мог асинхронно работать. Второй - когда челики обратились к нам в поддержку посмотреть почему сайт не открывается. Оказывается, это из-за видеофайла, которого разместили на главной странице.
>Где про них прочить вообще и с какой стороны гуглить вообще В книгах про системному дизайну и веб архитектуре.
>>3274352 >>самодельный парсер xml, DOM выстраивал или на прямую элементы искал без встроенных xml функций?
>самодельный парсер xml, он тупо подвисал на время чтения А ты быстро хотел распарсить? Аяксом отправляешь и анимацию загрузки показываешь или очередь в микросервис
>В книгах про системному дизайну и веб архитектуре. И какие конкретно?
>>3274509 Потоковое чтение xml-файла, в котором хранились настройки шаблона/сайта. Когда открываешь xml-файл на чтение, он загружает его полностью в память. 10 мегабайтный файл превращался мегабайт в 50-70 в памяти. Поэтому приходилось в потоке делать.
>Аяксом отправляешь и анимацию загрузки показываешь или очередь в микросервис Куда отправляешь? Это было на вордпрессе, какой микросервис. Какая ещё "анимация загрузки", он занят был собственно парсингом xml. И пока он парсит xml, он даже не может ответить на фронт а-ля "прогресс 38%", без сторонних библиотек.
>DOM выстраивал или на прямую элементы искал без встроенных xml функций? Библиотеку брал.
>И какие конкретно? Я давно не слежу, посмотри свежие у manning, packt, o'reilly
>>3275117 Денвером еще кто-то пользуется? Я 9 лет уже пишу код в разных конторах, денвероподобную вещь видел один раз 8 лет назад. Лет 5-6 как docker уже вообще везде. Это де-факто стандарт.
>>3276222 >>3276222 >>3276222 Про алгоритмы я хз, вот паттерны могу посоветовать refactoring guru сайт. Это более сжато и концентрировано, есть примеры по пхп и тайпскрипту. Сам сейчас по нему занимаюсь и всем советую!
Когда использовать стабы, когда использовать моки в phpunit? Первое предположение - стабы когда нужно проверить, что метод возвращает определенное значение, моки когда нужно проверить что правильно метод вызывает другой метод.
>>3276440 >что на собесах спрашивают Какие собесы? 95% откликов это игнор или отказ. 5% это тестовое задание. Которое зачастую сопровождается молчанием со стороны хрюши.
>>3277151 >зачем тогда вакансия, если игнор на все отклики Не знаю, я с хрюшами не общался. Да и сами хрюши часто не пишут причин отказа. В hh есть автоматические ответы - хрюша нажимает "отказать" и кандидату отправляется шаблонное письмо "Здравствуйте, анон анонов! К сожалению не можем рассмотреть вашу вакансию. Хрюша". Это еще пол беды. Вторая беда - мало стажерских и джуновских вакансий. На часть из них требуют айти-образование, на часть опыт коммерческой разработки хотя бы год, на другой только офис в городе Урюпинск, на другой предлагают самозанятость (выполнил задачу? красава - на деньги, не выполнил - пошел нахуй, а какие у них будут задачи - хуй знает, справишься ты или нет). На часть вакансий есть тестовое, которое будешь делать от 2-7 дней. Никто не будет комментировать твое тестовое. Молча прочтут сообщение с выполненным тестовым и все. Большая часть вакансий это 1c или битрикс. Ну, если тебе нормально зашквариться, то можешь их учить. Мб действительно так легче вкатиться. Вчера только откликнулся на вакансию, где была удаленка, лара и джун позиция. 100% подхожу к вакансии, только Redis еще не трогал. Отказ. За что? Почему? Та хрюша даже не отправила шаблонное письмо с отказом. Просто молчаливый отказ.
>>3277151 Просто ты еще не прочувствовал на себе агонию поиска работы в айти, поэтому тебе кажется, что только нагнетаю. Я когда только начал откликаться, у меня первым откликом на нормальную вакансию скинули тестовое. Но т.к. тогда у меня хуже были знания и умения, то я его завалил. А тестовое было очень простое. Самое кайфовое из которых я делал. Работы на несколько часов. И я тогда подумал: ну да, наверное все то плохое, что писали, это страшилки или люди просто не могут написать нормальное резюме, где опишут все свои навыки (по типу "знаю php и mysql, возьмите на работу"). Сначала все было норм. Мне вообще на первую половину поиска работы везло. Я выполнял тестовые задания, мне писали, что мое резюме их заинтересовало. А сейчас какой-то пиздец, навыки выросли, резюме увеличилось, я стремлюсь к знаниям мидла (начал рассматривать технологии, которые встречаются в их вакансиях), а мне лепят отказ или молчание. Большинство вакансий дерьмо. Да. Мб хорошие компании в начале года понабрали себе джунов и все, теперь ждать новой итерации. Короч, вот такие дела. Но всегда нужно понимать, что существует случайность. Может сыграть и удача и тогда не будешь на себе этот ад чувствовать. Я также понимаю, что выбрал немного хард сложность - только удаленка, только лара или симфони, никакого 1с и битрикса, только трудовой договор.
>>3276785 А еще главное написать, что ты любишь расширяемую, чистую, гибкую архитектуру. Как-то видел резюме челика. 0 описания навыков, 0 описания изученных технологий. Зато небольшой текст о том, как он любит писать гибкую, расширяемую, чистую архитектуру. Блять, а кто не любит? Правда не каждый может! Самое смешное, что это пишет джун. Ну какая тебе, блять, чистая архитектура? Даже мидлы пишут говно. Ты джун, ты даже боевого пороху не нюхал, а что-то заливаешь про написание чистой архитектуры. Это не помешало ему оказаться в друзьях хрюши. Нужно держать такого еба программиста поближе, ценный специалист, кабан кабаныч будет доволен.
>>3277175 Или другое резюме. "Обладаю высочайшими аналитическими способностями. Выполняю задачи быстро и безошибочно". Вот это у челика самооценка. Ну, мб там реально гений сидит, либо пиздабол. Нассал он хрюше хорошо в уши. Она даже добавила его в друзья, жадно прихрюхивая, что отхватила такого специалиста.
>>3277169 >Вчера только откликнулся на вакансию, где была удаленка, лара и джун позиция. 100% подхожу к вакансии Вспомнил, что там было тестовое. Видимо по мнению хрюши я настолько плохой кандидат, что даже не достоин выполнить их обосанное CRUD неоплачивое тестовое.
>>3254950 (OP) Коротко для вкатунов роляет: 1. Вышка по IT профилю. 2. Техническая вышка не по IT профилю. 3. Пет-проекты и прочее. Скажите что вышкошиза и т.д. Скажу - да. Вкатунов просто дохуя и по факту такой отбор, возьмут "нулёвого технаря" чем чела самоучку который что-то там писал и может показать код.
>>3277430 >Скажите что вышкошиза и т.д. Скажу - да Тут не столько ты вышкошиза, сколько хрюша. Хотя я их понимаю. Когда читаю посты людей, выпустившихся из айти-вуза, на хабре, ощущение, что там одни глыбы с математическим мышлением и знающие несколько ЯП.
>>3277430 взяли нулевого технаря @ он только зп получает и ничего не делает ибо нулевой @ зато помнит паскаль, сопромат и расчет цепей 70-80 годов для транзисторов
>>3277450 Взяли таксиста с "опытом" @ Дали задание сделать вывод статистики прибыли по месяцам с групировкой по партнерам, продуктам или менеджерам на выбор. @ Вытащил всю БД в пыхыпы и подсчитал. @ Скрылся в тумане в погоне за х2 @ Стартапу испольнился годик. Топ статистики выводится в шапке админки. Админка еле открывается.
>>3277486 Взяли нового таксиста с "опытом" @ Сказали переписать чтоб не тормозило @ Сделал кеширование рассчета статистики @ Скрылся в тумане в погоне за х2
>>3277486 Вместе с таксистом подавался другой кандидат постарше, который помнит еще рамблер, и может решить задачу одним запросом в бд. @ Девочке эйчару он не понравился - 40 лет, уже старый. Сразу дроп, до техсобеса не дошло. @ Взяли улыбчивого таксиста.
1,5 часа ебался и закончил тем, что просто откатил код и репозиторий до недавнего стабильного коммита. Ахуенно, когда обращаешься к экшену контроллера, который отдает json ответ. А вместо json ответа в консоли 500 Error, лара ничего не говорит, ответ пустой. Вообще не понимаю что за чудеса. Причем единственное изменение, которое я сделал, это продублировал метод контроллера, заменив названия отдаваемых сущностей. Мб это из-за того, что я везде использую App:make() для разрешения зависимостей? В начале пиздеца ларка еще высрала "Maximum call stack size of 196608 bytes (zend.max_allowed_stack_size - zend.reserved_stack_size) reached. Infinite recursion?"
>>3277844 Я написал TDG, который использует в теле методов для доступа к БД, Eloquent Model, а чтобы обращаться к Model, я создал свойство orm, которое в конструкторе инициализируется как $this->orm = App:make(HuiAR::class); Я вообще не понимаю КАК мне автоматически разрешать зависимости в ларавель, если конструктор содержит свойства, например, объект требует name, age, а потом TDG.
>>3277845 Для этого есть провайдеры в ларавел. У тебя нет другого способа кроме того, чтобы написать в провайдере $this->bind(MyClass::class, function() { $myTDG = app(MyTDG::class); return new MyClass("some name", 33, $myTDG); });
Если тебе нужны несколько инстансов MyClass с разными значениями в конструкторе, то простого способа в ларке нет. В пыхе для такого нормально фабричный метод использовать, а фабрика уже может кешировать созданные инстансы MyClass если такое нужно
>>3277851 Еще добавлю что вариант сделать один инстанс MyClass с сетерами setName, setAge самый говнокодный и за такое надо по рукам и башке на кодревью бить
>>3277445 >Тут не столько ты вышкошиза, сколько хрюша. Да нет, скорее всего ты просто на дне рекрутинговой цепочки перед тобой люди с рельным опытом среди которых могут быть смешаны накрутчики и они по сути пройдут раньше чем ты. Ведь зачем тратить время на не релевантного кандидата когда есть толпа (условно) релевантных?
Что должен знать phpшник про CI / CD чтобы разворачивать современные проекты фреймворки? И что вообще, там же куча разного и всякого 1. Какой минимум 2. Какой максимум
Я обычно пользовался unzip 123.zip и далее вручную все там, дамп залить в бд
А это норм, что я вместо того, чтобы передавать в шаблон пхп переменные, ничего не передаю? А с помощью js на странице делаю ajax запрос и запрашиваю эти данные? Я так делаю не со всеми переменными, а с массивом объектов.
Я правильно понимаю что если устроюсь на правах самозанятого то у меня не будет никакого пруфа моего стажа? Это единственный способ работать без военника/приписного
>>3278572 >то у меня не будет никакого пруфа моего стажа? Нууу ээ я работал в Kaban Enterprises, inc. с такого-то по такое-то, вот мне даже зарплату зачисляли, можете позвонить там спросить если вдруг не верите. Но вообще это хуйня всё, если ты норм пацан, сделал тестовое и пояснил за всю хуйню на собесе - нахуй им тебя сливать?
>>3278572 С военкоматом проблемы? Скоро по всей РФ электронные повестки внедрят после вообще ничего не дадут открывать и регистрировать пока не придешь в военкомат. >>3278585 >нахуй им тебя сливать? Кандидатов полно, зачем чел у которого с гос. структурами проблемы? Так и бизнес начнут напрягать по глупым причинам, оно надо?
Начал чтение документации симфони. И что я скажу...вы серьезно, блять? Столько нытья в этом треде я слышал о том, что симфони сложно, что нет материала, что ничего непонятно. Мб после базового понимания ларки и написания на ней нескольких проектов, симфони ощущается легким? - хуй знает. Читаю доку симфони и постоянно мысли: "и в ларе тоже самое, только называется по-другому".
>>3279119 >и в ларе тоже самое, только называется по-другому Потому что ты сливки снимаешь. Попробуй на симфони нестандартную аутентификацию запилить. Придется разбираться как устроен фаервол в симфони и конфигурировать контейнер. Вообще чтобы почувствать симфони надо делать что-то что приводит к работе с встроеными фабриками, написанием декораторов сервисов и перенастройкой контейнера. В ларке все построено на принципе convention over configuration, а в симфони configuration в первую очередь, но все преднастроено, чтобы работало для дефолтных юзкесов.
Вот тебе джунская задача чтобы понюхать симфони. Запили динамическую форму "Список менеджеров" Страница содержит список менеджеров. Каждый элемент списка содержит несколько инпутов: Фамилия, Имя, Отчество, Отдел, Должность Фамилия, Имя, Отчество - обычные текстовые поля Отдел, Должность - выпадающие списки На странице есть кнопка "Добавить менеджера". При нажатии на кнопку добавить менеджера, на страницу добавляется новый элемент с инпутами. Так же у каждого элемента списка есть кнопка Подчиненные. При нажатии на кнопку Подчиненные, под списком открывается список подчиненных. Список подчиненных выглядит так же и работает так же, как список менеджеров. Фактически надо реализовать древовидную структуру В каждом списке подчиненных есть кнопка "Добавить подчиненного" На странице есть кнопка "Сохранить" При нажатии на кнопку сохранить список менеджеров сохранияется вместе со списками подчиненных и после сохранения при перезагрузке страницы мы не теряем сохраненную форму. Все реализовать без аяксов, чисто на FormBuilder Можно использовать ванильный жс или жиквери для динамизации интерфейса
>>3279143 Полегче-полегче. Я всего лишь прочитал раздел Creating Pages :^D (ну и еще половину Routing). Дочитаю базовые разделы и, мб, попробую выполнить. Мб - потому что у меня и так дел дохуя (читаю книги + пишу проект на ларке), но закрепить на чем-то стоит.
>>3279145 Согласен, что ларка более популярный фреймворк в вакансиях. Но! Я два раза оказывался в ситуации, когда мне скидывали тестовое, где можно использовать только симфони. Нахуя они мне кидали тестовое, когда у меня в резюме ларка? Хуй знает, мб в глаза долбились или думали, что за пару дней прочитаю и тут же настрочу им проект. Мне норм изучать второй фреймворк. Ту же ларку, я не то, чтобы глубоко знаю, но умею ей пользоваться для решения типичных задач. Сейчас планы изучить базово симфони, научиться и на нем круды шлепать, а потом углублять знания по двум фреймворкам, чтобы не выглядеть клоуном на собеседовании.
>>3279373 К чему твой вскукарек? Если нет опыта работы, теперь за бесплатно работать? 15к рублей это меньше прожиточного минимума. Т.е. по мнению работодателя у человека уже должна быть работа, чтобы он смог себя содержать, пока он ходит на стажировку?
>>3279349 Ахуевшие пидорасы. 8 часов в день РАБотать за деньги ниже мрота, ещё и в офис их ездить. Совсем ахуели, а ещё пиздят что айтишников не хватает. Конечно блядь, условия хуже чем у дворников, ещё и конкурировать за эту должность говна, ахаха, даже в пятерочке стажировка на таких условиях не проходит.
>>3279390 >>3279395 А что здесь удивляться? Вакансия для студентов it специальностей, а не свитчеров с вероятностью 99.9%, плюс написано от 15000 так что могут и больше накинуть.
>>3279423 Там еще тестовое задание. За 15к рублей ты должен доказать что ты тот самый, избранный гой, готовый работать за копейки по 8 часов в день 5/2. >от 15 Ты маленький, чтоли? "От" это почти всегда означает "равно". Работодатель просто немного стесняется, что он такие копейки предлагает, вот и приходится выбирать "от".
>>3279423 >Вакансия для студентов it специальностей Вот ты сам себе и противоречишь. Почему человек, который потратил 4 года на профильное образование, должен получать 15к рублей за стажировку? Это зарплата для человека, который месяц подрочил php и научился SELECT * FROM делать в mysql.
>>3279438 >Это зарплата для человека, который месяц подрочил php и научился SELECT * FROM делать в mysql. Это зарплата для дворника на пол ставки. Даже человек с месяцем знаний получает значительно больше в странах, где ценится человеческая жизнь и труд.
Если у вас студент it вышки на выходе получает 150 долларов в месяц, при нагрузке 40 часов в неделю (пусть даже с надеждой что стажировка пройдет и он будет получать АЖ 400 долларов, что ещё не факт, ибо они тебя брать на джуна не обязуются), то я даже не знаю как это назвать, тут лестных слов не подобрать. Это натуральное рабство. Я за 400 долларов даже с дивана не встану, про 150 вообще молчу.
>>3279446 >Даже человек с месяцем знаний получает значительно больше в странах, где ценится человеческая жизнь и труд. Скорее сидит месяцами без работы, потому что вкатыши без местного опыта работы не нужны.
Выше по треду нужен срочный реалити чек. Начинающие стоматологи платят из своего кармана за аренду кабинета, чтобы получить доступ к практике. Выпускники педа работают за тридцатку (в мытищах, полчаса до москвы на электричке) по шесть дней в неделю. Рванувший с вакансии челик явно не понимает в каком месте заспавнился.
Для валидации формы нужно знать регулярные выражения? А как организовать валидацию почты,никнейма,пароля,даты ДР? Получаем каждое поле через get. Потом на каждое поле лепим функцию,функцция должна вернуть true. Только вот не знаю как все три функции в конце сравнить,чтобы потом вывести сообщение типо все ОК
>>3279727 >Для валидации формы нужно знать регулярные выражения? И да, и нет. Если нужно проверить структуру строки, то надо. >А как организовать валидацию почты,никнейма,пароля,даты ДР Валидация это проверка, что значение соответствует каким-то ожиданиям. Например, адрес электронной почты не может быть пустой строкой, не может превышать n символов, не может содержать больше одного @ и т.д. >Только вот не знаю как Определи набор правил валидаций и напиши для них функции. Например, значение не пустое - isNotEmpty($valueFromForm). Или емайл корректный - isValudEmail($email). Эти методы могут возвращать текст ошибки валидации. Потом собираешь, например, массив, где ключ - название поля формы, а элементы - текста ошибок и выводишь как значение атрибута value <input>.
>>3279727 >вывести сообщение типо все ОК Нужно не делать сообщение ОК, а делать редирект на страницу с сообщением "ОК", т.е. перенаправление на другой адрес.
>>3279742 Зависит от набора правил валидации. Хочешь проверить, что строка не пустая? - регулярные выражения не нужны. Хочешь проверить, что имя имеет минимум 1 символ, но не более 20? Зачем тебе регулярные выражения (хотя и тут их можно использовать)? Регулярные выражения это способ описать структуру слова. Есть слово "анон". Оно состоит ровно из 4 букв русского алфавита, причем в нижнем регистре. Поэтому регулярные выражения полезны тогда, когда ты хочешь проверить строку на соответствие какому-нибудь шаблону. Если у тебя нет в планах таких проверок, то и регулярные выражения, возможно, тебе не пригодятся.
>>3279753 Ну да. Если ты хочешь узнать про валидацию ФИО, то можешь почитать какие символы разрешаются в использовании, прям так и гуглишь. Если ты хочешь узнать про валидацию никнейма, то можешь попробовать позаполнять формы регистрации каких-нибудь сайтов и посмотреть что они принимают, а что нет - какие ошибки показывают пользователю. Ты должен понимать здесь одну вещь - правила валидации это просто хотелка. Вот ты создаёшь сайт и хочешь, чтобы любой пользователь, при написании никнейма, начинал его с символа @, все! Это правило валидации. Да, мб странное, мб ненужное, но это правило валидации. Но обычно ориентируются на общепринятые представления о том, какие символы можно использовать там и там (например, в емайл) и на реальность (в реальности мы почти не встречаемся с людьми, у которых имя ₽+:₽-89(_##*.
>>3279821 Да заебал ты ёбанный шашлык. Массив _GET заполняется только когда страница открывается с параметрами http://localhost/validation?email=example@example&username=user&password=pass. А когда ты данные формой шлёшь, надо использовать _POST.
Прикольный в Doctrine подход. Насколько я понял, класс сущность просто описывает структуру таблицы, а все SQL находятся в репозитории. Получше, чем AR в Laravel.
>>3280569 Да. А чего ты боишься? Я проходил этот учебник вплоть до ООП и не столкнулся с каким-то проблемами, что учебник написан довольно давно. Часть вещей ведь не так уж часто меняются. После учебника обязательно нужно решить задачу "список студентов", которая будет в конце; конечно же, читая все подсказки и статьи, которые предлагает автор задачи.
>>3280990 Ну это говорит что у тебя лишь низкая база, попробуй вернуться к задаче через 3-5 часов или завтра. Знаю человека который задачу на палиндром на циклах решал 1 неделю потому что не мог разобраться в циклах.
Может кто-нибудь порекомендовать хороших книг или статей по оптимизации БД, в частности, mySQL. Я 0 в БД, мой максимум писать простые SQL-запросы, но я понимаю, что в будущем, мб, от меня потребуется понимание профилирования и оптимизации запросов. У меня такая проблема, что я либо натыкаюсь на материал, где просто говорят, что нужно делать хорошо, а плохо не делать и как важно не писать плохие запросы, которые грузят систему, либо на материал, который рассчитан на людей, которые решили всю свою текущую жизнь положить чисто на БД.
>>3281120 Пока что ничего. Из php. Можешь установить mysql, выучить SQL: https://m.site-do.ru/db/db.php Можешь установить git, завести на гитхабе аккаунт. Научись создавать удаленный репозиторий на гитхабе. Изучи команды git init, git remote add, git pull, git push, git add, git status, git commit, git checkout, git switch, git branch -m, git branch -D, git merge, создание ветки. Можешь изучить основы html и css: https://webref.ru/course
>>3281126 Я уже знаю все, что касается фронтенда и, собственно, фронтендером работаю сейчас. Хочу php и sql поизучать для общего развития и более глубокого понимания бэкенда.
Хочу спросить у вас, все ли здесь присутствующие пользуются ИДЕ от жидбрейнс? Хочу понять просто есть ли какие-то адекватные варианты для пхп, кроме этого говна. Объясню свою позицию. Я не хочу пользоваться каким-то непонятным говняком для взлома этой ИДЕ. Оплатить я ее тоже не могу, т.к. нахожусь в России, а они решили из России деньги не принимать. Да и дорого. Может быть, для профессионального программиста, который на пхп зарабатывает деньги, это копейки и норм вложение в принципе, но мне, для обучения, слишком накладно. В вс коде чет поддержка пхп слабая, а расширения исключительно васянские и популярностью не пользуются. Неужели все пыхеры сидят на говне от жидбрейнс?
>>3281181 Да, я сижу на phpStorm. Да, я два раза ставил его с рутрекера. Мне норм. У меня на компе находится столько разного сомнительного дерьма, что мне уже все равно - компьютер не глючит, реклама не вылезает сама по себе в браузере, странного поведения в компьютере нет - значит все +- норм. Сама по себе IDE очень кайфовая, так что рекомендую попробовать.
>>3281274 То, что эта IDE является платной и недоступна в моей стране, не позволяет от нее кайфовать. Вообще как так получилось что единственная сейчас IDE под опенсорсный php является анальнейшей, дорогой проприетарной доильней по подписке?
>>3281311 >анальнейшей, дорогой проприетарной доильней по подписке? Так она стоит своих денег. Ты когда хорошие вещи видишь в магазине, тоже возмущаешься?
>>3281332 >Ты когда хорошие вещи видишь в магазине, тоже возмущаешься? Нет, если это не распиаренный дикий оверпрайс как жидбрейнс. Это же буквально худшая контора худших уебков. IDE то может быть и не такая плохая в целом, но я ей пользоваться не могу по своим принципам. Я вообще проприетарщиной стараюсь по минимуму пользоваться.
>>3281311 Потому что это гигантский объем работы? Причем бесконечный. Вышло новое изменение или фикс или фича - надо допиливать.
Вот тебе пример пикрелейтед: стат анализатор пхп кода, оупенсорс. Это гораздо проще, чем полноценная иде. Посмотри на количество issue. И сколько всего было уже сделано. Или небыло, потому что не смогли.
То что существует бесплатный вскод - это просто удача. Эта иде - это часть маркетинговой кампании по продвижению микрософтовского typescript'а, в котрый миллиарды въебаны. Пхп к ней "прикрутили" кое как энтузиасты. Сама иде для пхп не делает нихуя, и не будет в будущем.
Про вим и говорить нехуй, просто не могу имаджинировать объем пердолинга чтобы прикрутить к нему xdebug или код сниффер какой-нибудь.
>>3281359 Так, к примеру, линукс - это еще больший объем работы и тоже бесконечный. И в него тоже денег въебывают корпораты. Но код линукса открыт и дистрибутивы почти все бесплатные.
>>3281371 Пчел, ты вообще не понимаешь как это работает. Разработчики ядра линукса получают зарплату. Компании, в которых работают эти разработчики платят им деньги за то что они занимаются разработкой линукса. Это не подработка и не бесплатный труд вечером после основной работы.
>>3281381 Ну и ладно. Я просто хочу нормальную бесплатную идешку, в которой я смогу писать свой говнокод, а не безальтернативный, платный жидбрейнс, который стоит больше, чем дохуя. Дак еще и платить надо каждый месяц.
>>3281392 Вкатусик, вкатуночек, сходи посмотри сколько стоит джира или слак. Там ты совсем прихуеешь. Лицензию на иде тебе предоставляет работодатель. Где и как он её высрет - это его проблема, причем далеко не самая большая.
Пытаюсь понять суть микросервисной архитектуры. Допустим у меня есть монолит, в котором есть сущности Пост и Комментарий. Если я буду распиливать монолит, то у меня будет два сервиса - Пост и Комментарий? Каждый со своей точкой входа в приложение, со своими представлениями и системными вызовами? Короче, монолит, только построенный вокруг одной сущности? А потом я беру эти мини-монолиты и раскидываю по контейнерам?
>>3281458 Как уже сто раз говорили микросервисы это не столько про архитектуру, сколько про организацию разработки несколькими коммандами. Как как поделят ответственность, такая и будет микросервисная "архитектура". Но есть другие точки зрения. Можешь посмотреть у Елисеева. Он делит микросервисы по ДДД контекстам.
>>3281458 Блять ты хуйню какую-то высрал. Так распиливают только долбоёбы. Микросервис должен быть достаточно большой, но не слишком большой. Не то что ты 10 строчек кода высрал и пора деплоить новый микросервис. Подразумевается, что над ним будет работать независимая команда из 3-6 человек. Если ты в одну харю работаешь и у тебя десяток микросервисов, то нахуй они вообще нужны? Пример микросервиса - склад товаров. Ты сажаешь дизайнера и двух программистов писать, а их будет кладовщик консультировать, запрашивать новый функционал. Ему допустим нужна система отчётов, то программисты пилят. Им не приходится взаимодействовать с другими командами, запрашивать разрешения у директора компании. А то что ты описал - это безыдейная хуита. Ну вот я сделал "сущность комментарий" и дальше что? Как мне это помогло, что я его сделал отдельным? Короче хуита на постном масле.
>>3281482 >Им не приходится взаимодействовать с другими командами Я думал наоборот самый цирк начинается когда одни присылают говно, или другие принимают говно, или нарушается когерентность данных, а потом ещё другая команда начинает пиздеть чтобы снять ответственность ммммм здорово
>>3281493 Не-не-не, стоп. Твой микросервис - это твоя зона ответственности. Сама команда, которая его обслуживает отвечает за функционал, дизайн, работоспособность, нагрузку. Если команда проебалась, выбрала слабенький сервер и микросервис лёг - это их проёб. Все требования исходят только от конечного пользователя. Если ты делаешь микросервис для бухгалтеров, значит бухгалтер и будет требовать. Если же это сервис для маркетологов, значит маркетолог будет постить тикеты и просить запилить такую-то приблуду. Всё раздельное. Дизайн отдельный. База данных отдельная. Единственное что общее - это аутентификация. Я что хочу то и ворочу со своим микросервисом, хочу могу стресс тестинг сделать.
Вся идея - что команды самостоятельные сознательные люди и что они не будут на каждый чих бегать к директору или тим лиду консультироваться. А иначе нахуй нужны эти микросервисы.
>>3281410 >Лицензию на иде тебе предоставляет работодатель Так это явно не галера должна быть. А чтобы до такого уровня дойти мне нужно где-то писать код. А писать негде, потому что единственная иде - платная, стоит дохрена и недоступно в вашем регионе.
>>3281560 Ну конечно правда. Вот видишь - все в тереде уже разбрались, микросервисную архитектуру проектируют. Правда на иде бабок нет, но ниче мамка на днюху купит лицуху.
Мне нужен хостинг для ларавела под пет проекты и всякую фигню. Обычный VDS стоит рублей 300. Или, если у буржуев, за 2,5 евро видел. А есть что-то бесплатное, но полноценное? Чтобы с SSH, FTP и возможностью рулить окружением, ставить всякие редисы, докеры и кафки. Или я охренел и такой халявы не завезли?
>>3281482 >Как мне это помогло, что я его сделал отдельным В книгах написано, что микросервисная архитектура позволяет масштабировать систему избирательно. Другой плюс - независимость развертывания. Как я понял, проводится параллель с объектами - каждый сервис выполняет только одну задачу и выполняет ее хорошо и при этом является черным ящиком для других сервисов.
>>3281597 >В книгах написано, что микросервисная архитектура позволяет масштабировать систему избирательно Ну и что. А у меня кеширование везде. Мне похуй.
Ты какой-то слабенький плюсик получил в виде "отдельного деплоя/отдельного масштабирования", но зато у тебя появился новый геморрой - теперь надо тестировать взаимодействия всех этих ебучих микросервисов между собой. И чем ты их больше наплодишь, тем более мозгоёбнее будет взаимодействие. Это всё будет идти через какой-нибудь сервис авторизации, чтобы он дал добро на операцию. Добавь сюда ещё сетевой лаг. И прочее.
Посчитай сам время - сколько займёт чтобы сформировалась страница, если ты разобьёшь фронтэнд, пост и комментарий на три разных компьютера, и он будет вначале к одному компьютеру обращаться чтобы получить комментарий, потом ко второму компьютеру чтобы получить запись. Это дохуя времени ушло чисто чтобы твоя хуйня передалась по сети.
>>3281608 >и он будет вначале к одному компьютеру обращаться чтобы получить комментарий, потом ко второму компьютеру чтобы получить запись Поздравляю, ты только что выяснил почему пхп монолиты переписываются на го микросервисы.
Ну и в целом в больших микросервисных сетях используется событийная архитектура. То есть каждый сервис слушает n событий, и после обработки этих событий создает свои события.
В ситуации, которую описываешь ты, у сервиса, который отвечает на запрос пользвателя уже должны быть и посты и комментарии, потому что он подписан на события создания постов и комментариев.
А даже если не подписан, то он создает события-запросы и сидит слушает очередь событий-ответов. Обработка событий-запросов разумеется происходит параллельно. И сервис постов и сервис комментариев полчают событие-запрос одновременно.
UI при этом может быть подготовлен к постепенному поступлению данных, типа пока комментариев нет показываются заглушки. Ты полюбому такое видел где-нибудь на ютабе или в слаке.
>>3281610 Ну и в итоге чего ты добился? У тебя получится охуенно дорогое решение, отдельные сервера, отдельные базы данных они же не бесплатные. Каждая отдельная хуита - это дзынь! Минус тысяча. Дзынь! Минус пять тысяч. Заставить бы тебя платить тысяч 25-40 рублей в месяц за хостинг. Хотя это же не из твоего кармана.
И плюс, добавил себе геморроя в работе. Это всё придётся обслуживать. Обдумывать схемы взаимодействия, какие данные кому и в каком формате передавать. Как это всё потом тестировать. Писать отдельные конфиги для деплоя. Ещё писать дополнительные ci/cd и проч. Его
Мелочь просто неоправданно выносить в микросервисы. В одну харю пилить микросервисы тоже неоправданно. Это уже блять каргокульт какой-то. Ютуб - это другой случай, там огромная команда и огромный трафик. Там это имеет смысл делать. Двачеры вряд ли когда-то столкнутся с проектами подобного размера и сложности.
>>3281611 А кто тебе сказал что микросервисы это про профиты? То что ебланы занимаются каргокультом пытаясь быть как гугл это проблемы ебланов.
Вместо видосов пятнадцатилетних протыков посмотри вот это гениальное видео от человека, который видел некоторое дерьмо. "Как саботировать внедрение микросервисов" https://www.youtube.com/watch?v=r8mtXJh3hzM Если вкратце, без охуенных авторских шуточек: что бы ты не делал, ты скорее всего обосрешься, на каждом шагу подводные камни, сложности и заебы.
Микросервисы это сложно, дорого и геморройно. И вообще это не способ организации кода, а способ организации компании. Это на сегодняшний день единственный более менее рабочий способ заставить несколько сотен программистов работать над одним продуктом.
Если пишется система управления аэропортом, и пишут её 100+ С++ программистов, а управление ведется обычным образом, без всех этих разделений и заморочек, то вероятность релиза меньше 30%. Речь даже не о багах каких-то. Речь о вероятности того что написанный код вообще до аэропорта доберется. Можешь не верить на слово долбоебу с двачей, погугли зависимость успеха от размера проекта, демарко, chaos report'ы.
Микросервисы это способ сделать работу, которую невозможно сделать, заплатив за это "всего" двумя сантиметрами отрезанного хуя. Очевидно что для этого нужна целая операционная с врачами, медсестрами и опытным хирургом. А если у тебя всего этого нет, ты ты как еблан порежешь сам себя, истечешь кровью и сдохнешь в своей ванной.
>>3281565 Так вот мне емакс посоветовали, я в емаксе пишу, блядь, нахуй. Только вот подсветки синтаксиса нет и приходится гуглить команду на любое действие. А с иде я считаю что не по человечески они поступают. Бесплатно должно быть или комьюнити версия, например, как у них с пайчармом. А вынуждать новичков платить такие бешеные бабки за иде - это пидорство.
>>3281612 >микросервисы это про профиты Какая разница профит или нет? Кабанчик хочет у себя микросервисы, ты обязан понимать что это и как это реализовывать.
>>3281619 Кабанчик иногда хочет микросервисы, чтобы удаленные макаки не спиздили целиком проект и не продали конкуренту. К технологичности микросервисов это не имеет никакого отношения. Например кабан делает крипто казино. Крутилку с бананами и бекенд для этого пилят макаки с улицы или аутстаф. Логику выигрышей и криптошлюз пилит проверенный челик.
>>3281696 > какие ещё подобные сценарии есть, интересно А тебе зачем? Просто кабаныч хочет, чтобы доступ к коду был разграниченный, как в репозитории так и на сервере. Это не моя фантазия. Я реально такие соображения слышал от кабана.
Слушайте, а что у нас за пару последних лет в веб разработке случилось, что почти в каждой вакансии обязательно присутствует Redis, Docker, Kubernetes, PhpUnit, Apache Kafka и/или RabbitMQ, Clickhouse. У нас каждая шаурмечная теперь хайлоад с миллионом запросов в секунду, или что? Опять же, тесты - никто их сроду не писал, все бегали от них, как от маньяка из подворотни. А теперь вездену ладно, "везде" - это я загнул во многих вакансиях стоит "Написание Unit тестов".
Как, блин, к этому сраному рынку адаптироваться, когда сначала на твои попытки внедрить тесты или ещё что-то эдакое, отвечают "нам этот твой редис нахуй не нужОн!", а потом "ой, а нам нужно, чтобы кандидат пользовался редисом последние пять лет".
>>3282135 >Обязательно ли ставить линукс Нет. Нет необходимости пользоваться линуксом, но знать как с ним работать это плюс для резюме. >Какой операционной системой пользуетесь? Виндой.
>>3281954 Перевожу для вкатунов: Redis означает: работали ли вы с кешем вообще? Никто конкретно про редис не спрашивает. Docker означает: забудь про ебучий LAMP, сейчас твое рабочее окружение в контейнерах. Kubernetes вообще нихуя не означает, ты все равно ничего там настраивать не будешь. PhpUnit означает: мы НЕ УМЕЕМ писать тесты. А ты УМЕЕШЬ? Заебись конечно что умеешь, а то у нас такой кал. Apache Kafka и/или RabbitMQ означает: нам приходится изъебываться чтобы не писать логи в эластик напрямую, потому что это долго. Clickhouse означает: в компании SQL сектант, который не осилил запросы в эластик.
>>3282228 Вот, кстати, одной из причин того, что я пошёл в программисты из админов - программисты только программируют, а не тянут на себе всё подряд. Но так было в далёком 2014-ом. А сейчас расплодилось вот это вот всё. На работе-то ладно ещё, работать можно. Но на собеседованиях просто дикое душнилово.
>>3282316 Рыночек идет по пути оптимизации усилий и увеличении прибыли. И ты должен. Эх, раньше то было лучше, воены просто учились махать мечем/тыкать копьем, не было всяких пзрк, не надо было учиться летать на вертолетах. Эх!!
>>3282334 Ну, вообще-то так и было. Когда-то профессиональные воины либо сражались, на чём было, либо адово бухали и ебали селянок. А потом пошла шагистика, манипулярный строй и зубрёжка устава легиона.
>>3282370 Я бы проверил почему не работает, но иде под пхп только платная от конторы пидорасов. А у меня нет на нее денег. Попробуй спросить у чат гпт.
>>3282370 Ты понимаешь, что тут с этим говном давно уже никто не имеет дело? В том смысле, что самому в пхп скрипте писать Location. Поэтому и вспоминать что у тебя там могло произойти не так - не каждый вспомнит. Учись гуглить. Твою проблему можно загуглить так: "header() php не делает редирект". По выдаче гугл результатов, например, у человека с форума header() не работал из-за того, что подключаемые файлы с помощью функций include/require не имеют формата utf8 без BOM. Мы ж не знаем что у тебя там.
>>3282554 Я имел ввиду, что никто напрямую не вызывает header. Я сомневаюсь, что тут сидят люди, у которых уже есть какой-то опыт написания кода и они до сих пор не переехали на фреймворк. Во фреймворке все просто - вызвал функцию redirect() и все.
На какие вопросы нужно знать ответы, чтобы указывать в резюме, что знаешь Redis? Я установил Redis на ПК, установил пакет predis для Laravel, немного поменял конфигурацию, узнал под каким ключом Laravel кладет в Redis значения. Научился вытаскивать и класть значение через Laravel, попробовал сам писать сырые команды в redis.cli. Что дальше?
>>3282745 >На какие вопросы нужно знать ответы, чтобы указывать в резюме, что знаешь Redis? Дело не в ответах, а в собеседующем. Одному может быть достаточно что ты знаешь что это такое и где используется, другой будет душить вопросами пока не поплывёшь.
Правильно ли я понимаю, что сервис провайдеры в ларавель нужны для того, чтобы привязывать сервисы к контейнеру? Т.е., чтобы в приложении было одно место, где происходит привязка сервисов к контейнеру. Если нет, то напишите почему, иначе я буду считать отвечающего клоуном.
Хочу ввести логирование в свои проекты, но пока не знаю что хочу логировать (цель логирования - само логирование). Нашел статью, которая предлагает список журналов. Есть тут люди с опытом, которые могут сказать, какой из предложенных журналов стоит вести, а какой нет и мб добавят свои варианты?
>>3282903 Если >цель логирования - само логирование то веди все журналы.
Лично я на практике внедрял логи ошибок (чтобы самому быть в курсе, как наш копролит неработает), логи доступа ("аналитикам нужно знать, кто из клиентов чем пользуется, и насколько часто"), логи изменения ("а вот сделай кнопку "отмена", чтобы всё можно было вернуть взад, если я чего-то не то накликал").