PHP Symfony Developer / TechLead в Вакууме
  • Возраст в IT. Так-ли он важен

    Как ты не можешь понять, что твое здоровье гораздо важнее каких-то там проектов. Тебе надо не колесо подбирать, а искать радость жизни в другом. Толку с того, что ты подсядешь на таблеточку и вытянешь какой-то проект? Что с того? Хозяин бизнеса купит себе майбах, а ты — новую пачку таблеток?
    Ты в 49 напоминаешь раба с горящими глазами как-будто только после ВУЗа. Только тому рабу надо в кратчайшие сроки изучать то, что нужно рынку и он горбатится, т.к. за ним орда вайтишников стоят, а у тебя все уже есть и даже больше чем надо, а ты переживаешь.

    Ну не стоят никакие проекты твоего здоровья, ну заруби себе на носу!!! Хочешь весело жить — с парашютом попрыгай, на картинг сходи, по реке сплавься. Не знаю, мне компьютерные игры вставляют. Ну отвлекись ты от этого дерьма. Программирование — весело, когда у тебя нет сроков. А когда тебя на колесах сидеть ради сраного проекта заставляет программирование — тем более не весело.

    Неужели сам подушку не накопил? Или скучно просто дома сидеть?

  • Возраст в IT. Так-ли он важен

    Так кризисы — это ж самое классное время для заработка. Мои знакомые москвичи рассказывали как за год работы в кооперативе\коммерции\спекуляции можно было квартиру в Москве купить это в 1990. Уже доллары во всю ходили. Знай только где вертеться. В середну девяностых по сути такая ситуация была как в Украине сейчас. Типа есть бабло из-за рубежа и есть куча народу живущая за 50 баксов в месяц. Зарабатываешь там, тратишь здесь. В Москве куча зарубежных контор было, которые баксами платили, плюс местные нефть-газ-распил. А сейчас кому повезло в 90е подняться во всяких тайландах-черногориях круглый год живут с аренды своих квартир или бизнесы попродавали...
    Я вот как раз задумываюсь о старости. Меня эти обсуждения сплавов по днепру в 35 сильно подстегнули. Я себя футболистом каким-то почувствовал, у которого карьера там 10-15 лет от силы. И если не набарыжился до конца жизни, то бомжуешь. Чё и спрашиваю тебя. Что есть подушка на старость? Сколько надо и где. Вот ты бы что поменял?

    Підтримали: Loboda Andriy, anonymous
  • Возраст в IT. Так-ли он важен

    Ну ты занимаешься тем, что называется стартапами. Нервная разработка с нуля с непонятными требованиями и фиксированным бюджетом. А бабло как раз в саппорте, стабильное бабло, которое не кончается. Вот надо впрягаться в чужой говнокод. Это неприятно, но прибыльно и надежно и по нервам незатратно. Ну написали 23 летние синьеры говнокода, ну возьми покрой тестами его сначала, потом порефактори потихонечку. Зачем жемчужины выделять? Ты же, если знаешь как код пишется правильно, можешь из любого говна сам жемчужину зарефакторить. Ну полгода-год у тебя на это уйдет, но тебе все время оплатят это, а дальше экосистема у твоя собственная будет. Разберешься, будешь саппортить. Тестами только покрыть, чтобы при рефакторинге не рассыпалось (это да, большинство разрабов не любят тесты), да времени выбей (с этим не будет проблем в продуктовой компании, чей этот мамонт и есть по сути). Просто смени чуть сферу деятельности, меня самого один стартап до такого нервного срыва довел, что я на успокоительных 3 месяца просидел. Не от возраста это зависит, поверь, а от менеджмента и денег заказчика. Есть деньги — будешь 10 лет херней страдать, нет денег — будут гайки закручивать и сроки требовать.

  • Возраст в IT. Так-ли он важен

    Ну я в 21 год, когда читал эти треды про сплавы, физически не мог накопить подушку именно на старость. Да и сейчас в 24 ситуация не сильно лучше, т.к. коплю на квартиру. Не то, чтобы мне вообще не было где жить, но своя квартира в Кривом Роге не сильно на старость прокормит, а сейчас её на дне кризиса можно продать разве-что за треть стоимости... Приходится копить с нуля. С синьерской зп можно взять хату за год, но в пригороде Киева или в самом херовом спальнике. Сначала, хотелось бы для себя квартиру прикупить в классном районе, а не для старости, чтобы за 5к гривен сдавать...

    И вообще, что есть подушка на старость? Я вот думаю квартирами себе старость обеспечивать, но это же надо сейчас не по отпускам ездить да по заграницам, а откладывать почти всю зп несколько лет... Плюс опасения, что пузырь айти все-таки лопнет... Не знаю, молодой, хочется мир повидать, сыров поесть, машину какую-то необычную (или спортивную или там бизнес-класса что-то), чтобы не просто жопу возить, макбуки там, ну что у 23летних сеньеров в почете? Я ж недалеко от них ушел, на год всего старше.

    Підтримав: Loboda Andriy
  • Возраст в IT. Так-ли он важен

    Да чё ты заладил про возраст? Я от тебя много читаю текстов, что ты сначала какие-то космосы имплементишь, а потом в больничке с выгоранием и на препаратах. Может, видишь, что хреново со здоровьем, надо пойти кнопочки подвигать или sql-запросы поконструировать для аналитик, а не делать проекты с нуля и впрягаться в сдельную работу?

    Підтримав: осокор тауер
  • Возраст в IT. Так-ли он важен

    Меня это тоже очень радует. Только я в 2011 году, когда первый раз на доу попал, замечал, что сплав в 35. Даже треды тут на форуме старые именно про эту цифру говорят. Аргументация та же. Но вырос средний возраст с 24-25 до 27-28 за последние 5 лет, он растет ровно по мере старения основной массы айтишников, вошедших в айти на пике роста лидеров рынка в докризисные 11-13 годах.
    Сам еще пару лет напрягался типа, а вдруг вот промотаю золотое время долларовых зарплат в Украине, а потом мне 35 стукнет и бомжевать пойду, но сейчас уверен, что все ок будет. На работе обычно пхпщные синьеры и прочие бекендеры как раз в возрасте около 30, чаще 30-35. Я со своими 24мя годами вообще в этой сфере себя мелким чувствую. Основная гонка у фронтендеров сейчас...

    Підтримав: Loboda Andriy
  • Возраст в IT. Так-ли он важен

    Может, не надо на себя много брать? В одиночку тащить проекты, работать сдельно и т.д. Может, нужно работа почасовая по канбану, т.нз. «сосание вялого хера», извините. Когда не на результат работаешь, а выполняешь хотелки заказчика в крупной монструозной системе. Передвигаешь кнопочки, пишешь тесты, потом опять передвигаешь кнопочки... ну, саппорт, рабочий проект приносит миллионы, а ты знаешь как он устроен и кнопочки двигаешь. Насколько я знаю, такие люди ценятся и могут на одном месте и по 5 лет и по 10 просидеть. И еще по зп накидывают на 3-5% в год. Там как правило нету требований по срокам, скорее, сделать так, чтобы оно при деплое не отвалилось. Качество 100500 раз бдят, 7 раз отмеряют... 23-летним сеньерам скучно, зато голова работой не занята, можно книжек на работе почитать, расслабиться, а зарплата капает. :)

    Особенно, таким на коболе и фортране банкинги грешат, но есть банкинги и на джавах и всякие CRM долгоиграющие по 10-15 лет на пхп писанные. Конечно говнокоды, но спокойно и тебя любят и в попу целуют.

  • У вас «белая» зарплата? Такие компании ещё есть?

    Каждому учителю по ФОПу! Вместо зарплаты каждый месяц оплачивать инвойс!

    Підтримав: Егор
  • PHP: піти не можна лишитися. Піти

    Да, в базе данных, но управляет этим полем доктрина. Она его инкрементит, изменяет, смотрит на него при файндах...

  • PHP: піти не можна лишитися. Піти

    Я понял вас. Реализовать оптимистическую блокировку в работе с доктриной можно. К сущностям нужно добавить поле $version и аннотировать его как @Version с типом данных int или там dateTime. Доктрина посмотрит на эту аннотацию и автоматом будет инкрементить поле (или ставить текущую дату). Потом, при селектах вы указываете необходимый номер версии и OPTIMISTIC LockMode. Если версия не та, доктрина бросит соответствующий эксепшн, который вы обработаете.

    Но хз как это использовать, когда на 1 реквест поднимается инстанс, а потом все умирает. Между этими реквестами надо это дело где-то хранить самому. С семеркой, наверное, будет уже получаться запускать пхп как именно сервер, постоянно живущий и это все заведется так, как хотите вы.

  • Набор на бесплатные курсы iOS от IDAP Group в Кривом Роге

    Переезжайте в Кривой Рог! :) Только дождитесь пока автор скажет адрес курсов. Город очень длинный, если неугадаете с районом будете 2 часа добираться.

  • Набор на бесплатные курсы iOS от IDAP Group в Кривом Роге

    Сначала обрадовался, что в моем родном городе растёт айти-сфера и заходят компании, а потом пролистал вниз, посмотрел тестовые... Эээх!

    Тестовые задания как-будто писаны для выпускников 4-5 курса программной инженерии КЭИ кафедры Зеленского (дядя очень с душой готовит студентов, давая им современные тулзы для разработки десктопных приложений, включая даже WPF для C#). Когда я в 2013 году заканчивал, это была единственная кафедра и единственный местный ВУЗ, который очень хорошо давал современное программирование на C# под Windows. Выпуск с этой специальности — около 15 человек в год, из которых где-то половина тут же уезжает работать в бодишопы. А что делать остальным? Местный технический вуз (КТУ) до сих пор начитывает паскаль и дает Borland C++. Краем уха слышал о QT там, но только на C++ и знают его единицы, а тут хотят от стажера сразу окошечки делать, когда почти все местные вузы дрочат 5 лет консолями... Хееее. Про людей без вузовского бекграунда я вообще не говорю, там шансов нет.

    Потом проскролил ниже отзыв на компанию и понял, что это не про курсы, не про стажировку, а про чистое самое настоящее рабство. Хотят шарящего выпускника профильного ВУЗа, не студента (студент не сможет пятидневку работать), с опытом и знанием хотя бы одного языка и UI библиотеки и этому чуваку, который может поехать в Днепр кодить на том же шарпе или за неделю въехать в пхп и зарабатывать от $300 в городе (пхпшники в КР нужны, знаю по себе), не хотят платить ни копейки!!! Ой-ой-ой! Сразу мысль, что на месте описанного выше выпускника со знаниями я бы, наверное, походил на курсы 2 месяца, но потом просто возненавидел бы это место и постарался бы свалить оттуда. Потому что когда бывшие одногруппники сидят в днепропетровском Сёрве или в Епаме или на пыхе там за год миддлы на $1000+ и уже понтуются сырами-зеркалками, а кто понаглее уже на хатынку откладывает, а ты еле-еле стажировку закончил и еще тебя в рабский контакт на $500 к Кривому Рогу привязывают... ЭЭЭЭ!!! Конечно, любой убежит. Поедет в Киев на $700-800, может даже на косарь.

    Легко учить людей айосу, когда ему 5 лет в вузике мозги полоскали ООП с первого курса и заставляли базы дергать и еще много чего еще. А вы возьмите чувака с чистыми мозгами без базы и научите. Слабо? Зато такой никуда не убежит. И никому кроме вас в ближайшие год-два не понадобится.

  • PHP: піти не можна лишитися. Піти

    Так PHP не сидит в памяти постоянно. Он же «создан, чтобы умирать». Каждый запрос — это отдельный инстанс, в котором поднимается PHP, весь фреймворк, инициализируется доктрина и т.д. Поэтому обычно если уже посылают запрос на сервер, то в конце, если все объекты изменились и все ок, делают flush(). Если флаш не сделать, изменения потеряются.

    Но я не до конца понимаю зачем делать, указанное вами. То есть, при нажатии на кнопку «ОК» и так уйдет вся форма целиком, объект сущности изменится в соответствии с переданной формой (если она валидна), потом произойдет флаш и объект обновится. А в чем смысл посылать несколько запросов на изменения объекта, не делая флаша?

    Вообще, конечно, можно сделать php демоном, который будет висеть в памяти все время и ждать каких-то параметров, тогда все существование демона в памяти заперсисченные данные будут лежать вот в том массиве $entityInsertions, а потом произойдет flush() и они разом применятся. Но для веба это какое-то извращение, зачем, если на 1 request надо отдать 1 response?

  • PHP: піти не можна лишитися. Піти

    UnitOfWork следит за изменениями объекта и шедулит объект на insert/update/delete, если он таковые изменения видит. Он ни с какими запросами не работает и даже не имеет понятия о том, даже какой тип СУБД используется. Потому что он знает только про уровень объектов и максимум что может — это в зашедулить в нужном порядке insert/update/delete.

    Уровень запросов доктрина хендлит с помощью Persisterов. Для каждой СУБД разных. Перзистер вызывается, когда происходит flush(). Выгребаются все вот эти изменения зашедуленные и персистер делает им типа executeInserts() или аналогичное. Там старается как-то оптимизировать несколько запросов в один пакетный, если это возможно. Ну и собирает сам SQL. Персистер можно и отдельно использовать.

    Когда, например, новая сущность заперзистена и зафлашена она становится managed, то есть про неё знает entityManager, она через него связана с конкретной строкой в таблице БД. Тоже самое, если сущность выбрать из БД запросом. Доктрина смотрит на первичные ключи и менеджит по ним (композитные тоже шарит). Тоесть если ты сделаешь refresh managed сущности, то доктрина перечитает по первичному ключу связаную запись, сработает гидрация поновой и у тебя будет актуальный объект. Если поменять первичный ключ, а потом перечитать, тогда жопа, да. Но на моей практике такого никогда не было.

    Підтримав: Serhii
  • PHP: піти не можна лишитися. Піти

    Доктрина берет spl_object_hash() от объекта, над которым надо проделать insert/update и хранит его в массиве вида
    $entityInsertions = [ spl_object_hash($entity) => $entity]; (если речь идет об инсертах)
    Такие же массивы для update/delete.
    Массивы хранятся в памяти. Если их заперзистили, но не зафлашили, то при die() эти массивы очистятся.

  • PHP: піти не можна лишитися. Піти

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

    Что касается игр, в интернете полно примеров консольных и текстовых игр на php. Там, где не жрется много памяти, процессы хорошо висят и не падают.

    Насчет мобильной разработки — тут не знаю.

  • PHP: піти не можна лишитися. Піти

  • PHP: піти не можна лишитися. Піти

    Если в годах так 2011-13 эти шютки про пхп-неязычность ещё были оправданны отсутствием нейспейсов, малой применимостью паттернов и solid, буквально единицами практикующими написание юнит-тестов, то сейчас... О чем статья? Зачем куда-то переходить? Язык, который еще 5 лет назад состоял из поделок уровня первого Yii с кучей магии, публичных свойств и повсеместным нарушением принципов SOLID остался только в нелепых CMSных процедурных поделках!

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

    Один остался жить в 2011, чей венец первый Yii, где до сих пор клепают сайты-визитки и «магазины» на выброс в подвалах вебстудий. Там постепенно идет переход на второй Yii, на котором, впрочем, пишут ничуть не лучше, чем писали на первом, хотя фреймворк довольно современный и писать хороший тестируемый код на нём можно. Просто люди без образования, чьим первым опытом была какая-нибудь CMS считают, что так и надо делать сайты. (они именно делают сайты, а не приложения в широком смысле вроде API, демонов и т.п.) На своей первой работе я когда-то от такой атмосферы плевался, но в моем городе ничего кроме PHP не было и тогда, собственно и посещали мысли перейти в PHP на что-то другое. Но потом я узнал про симфони 2. :)

    Второй мир — это PHP5.6-7, Symfony2-3, Zend2. Где применяются паттерны, на собеседованиях заставляют рассказывать о солид и объяснять какой принцип нарушает приведенный пример говнокода на листочке, юниттесты пишутся почти везде, ООП обязательно, PHPDoc каждого метода, кодревью, git flow, асинхронные задачи, nosql... Полно всяких энтепрайзных решений в плане архитектуры. Event-driven development, SOA, это реальность. Все по-серьезному, для всего есть библиотеки и экстеншны. Зарплаты всего-лишь на $500 ниже джавистовых и за последние несколько лет именно зарплаты симфонистов\зендистов выросли и почти джаву догнали. Синьер $3k+. В Европах сертификация по фреймворкам, по core языка непосредственно от Зенда.

    Минус пхп в том, что если ты принадлежишь второму миру, то не все понимают разницу и на симфони девелопера сыпятся резюме бывших вордпрессеров. Во всяких европейских не-айти вроде банков такие ребята могут подемпинговать цену. В Украине же уже вроде как научились их отличать. Так в чем проблема? Зачем куда-то валить?

    PHP7 вообще сказка, сбылась моя мечта, пхп наконец становится языком общего назначения с нормальной типизацией...

  • Middle — Senior прибавка зп

    Смена работы даст вам +1000$ за раз. И не обязательно при этом ориентироваться на лычку вашей компании. Выходите на рынок, просите верхнюю планку синьера с доушных зарплат и торгуйтесь. Результат превзойдет ваши ожидания, топикстартер. Только если вы не дутый синьер, сидящий 5 лет на одном месте.

  • ИТ курсы заполонили рынок (грусти пост)

    Ой да ладно, а ничего что на курсах все и сразу преподает один человек? То есть то, что в вузике читают 5 человек — отдельно человек на ООП, на теорию баз данных, там какие-то методологии разработки ПО типа ватерфола, на курсах читает один? И более того, мне как-то предложили на пхп-курсах попреподавать так я не смог узнать ни какая программа, ни сколько людей в группе, тупо ничего, кроме ставки 250 гривен в час и адреса, где надо быть.

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

    И вы говорите, что школа — это инстремент (????).Экскремент? Эксперимент? Инструмент? WUT? Вам точно нехватало школы.

← Сtrl 1... 6869707172...75 Ctrl →