×Закрыть

Можливо хтось мав досвід вивчення Java після PHP?

Поділіться, будь ласка, досвідом та мінусами/плюсами екосистеми, трудностями при переході, перспективами

Є можливість постажуватись влітку з можливістю працевлаштування, як мінімум вивчити ReactJS, а також зануритись у Java SE/Kotlin (Spring)

Буду дуже вдячним за аргументовані думки!

LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

А вивчити php знаючи java і основи JS? Чисто щоб на фрілансі підпрацьовувати іноді? Там взагалі робота буває? Чи варто в таке час інвестувати?

Лучше глубже изучить джаву, подтянуть матчасть, углубиться в какую-то предметную область и получить на джаве роботу, более высокооплачиваемую, чем старая работа на джаве + фриланс на пхп.
Фриланс на пхп — это будут на 90% трешаковые доработки какого-то легаси кода древних сайтов и задачи типа натянуть шаблон Х на CMS Y, с чем даже например мне — закоренелому пхпшнику возиться уже давно не хочется.
Если идти в пхп, то только с расчетом затем найти энтерпрайз на пхп (он тоже есть, хоть и немного) и заниматься им постоянно (и деньги у топов там будут почти как и в джава-энтерпрайзе).
Хотя кому как, кто-то берет количеством и фрилансит на пхп.

На Апворку безліч пхп проектів з фреймворками. В основному це ларавель. Проблема лише в рейті. В середньому там я бачу 15-20. Мені здалося що пхпшників шукають з цього діапазону на проекти з не сильно великим бюджетом. Необов’язково фрілансити з цмсками.

ну ларавель еще куда не шло, возможно ситуация улучшилась несколько за последние 5-6 лет, когда я последний раз серьезно смотрел на этот рынок,
но если был опыт в серьезных проектах со спрингом — все равно, буде трохи не те (хотя опять же, если надоел энтерпрайз — то вполне ок, но тут надо следить, чтоб основную квалификацию в процессе не просадить)

Ситуація дуже хороша стала. Останнім часом я дивуюсь скільки там шукають в команди, на бекенд, фронтенд, андроід, іос. Тобто чисто галерний тип проектів виходить. І в продукти беруть різних, і фулстьоків, і спеціалістів. Мені подобається. І рейти. Там же ж як погуглити фрілансерів, то у багатьох рейти за 50. Нічим не уступає Топталу де про 3% топ співають. Ще дуже добре почало що клієнти(не всі) вказують вилку рейтів, яку готові платити.

на апворке за пхп 50 очень трудно выбить. Много заказчиков морозятся когда за пыху ставят где-то от 30, т.к. очень много откликов на пыху и спокойно можно найти дева на гораздо меньший рейт. Чтоб какой-то гавносайт сделать не обязательно надо нанимать дорогого дева

А вивчити php знаючи java і основи JS?

Знаючи, це домашні поробки, чи комерційний досвід? Якщо перше, то воно дуже умовно котирується як знання. І там нема різниці що далі вчити щоб влаштуватися на роботу.

Комерційний досвід в джаві півтора року. Я вже зрозумів для себе, що зараз робота в аутсорсі мало відрізняється від фрілансу. Працюєш вдома і там і тут. Просто java на фрілансі відсутня, як поняття, особливо моя спеціальність. Ось я і думаю, що робити якщо інтерпрайз помре. Хоча, скоріше, фріланс помре ніж java інтерпрайз. А пхп здається легким... Можливо легшим навіть, ніж з java веб, в kotlin мобайл муватися. Можу помилятися. В будь якому випадку це погляд у майбутнє скоріше. На моменті роботи вистачає. Часто навіть цікавої. Просто моя апка перезбирається по пів години, ось різні думки і приходять...

А які перспективи щодо роботи з базовим англійським на ринку серед вакансій Java/Kotlin?

Особисто також переглядав ваканції, склалось враження, що 90% це аутсорс, де вимагають гарну розмовну англійську, а цим наразі, я не можу похвастатись(((

Де працюєте Ви, які задачі актуальні вирішуєте на цьому стеку?

Котлин- мобиледев...Ну и эмбед бывает...

А які перспективи щодо роботи з базовим англійським на ринку серед вакансій Java

поганеньки. знаю по знайомих з базовою англійською. Сам пішов із Джави з інших причин.

склалось враження, що 90% це аутсорс

так і є.
Звісно є й невелички команди що програмують на Java. Але вони беруть тільки мідл+ рівня.

Ну і взагалі — вимоги до програміста на Java як до програміста зазвичай вищі чим до програміста на PHP

Як я кажу — джун на Java повинен впевнено знати або орієнтуватись у речах про котрі мідл на PHP і не чув, хоча й інтуітивно використовує на практиці

поганеньки.

Можу сперечатися. Я потрапив на роботу з a2. Звичайно, довелося вчитися швидко. Часто, в аутсорсі, є купа народу в твоїй команді, яка може тебе підстрахувати. Можна зайти. Ну принаймні, можна було до кризи. І в будь якому разі треба підтягувати, ідеально до b2. Але, якщо читаєш і розумієш на слух — працювати можна.

Досі згадую цей перехід, як страшний сон. Хоча до того роки 2 писав на PHP, всякі Пітони хелоуворлдив, Делфі, на плюсах щось міг поковиряти, плагіни до Вінампа на асемблері писав. Але от ті тони XML, який читається невідомо ким десь під капотом, викликали лютий біль та ненависть. Всі ці ClassNotFoundException вирішувалися якимось хаотичним гуглінням. Зараз все сильно краще, особливо без SpringBoot. Сама мова то достатньо примітивна.

особливо без SpringBoot

Думаю малося на увазі «з», а не «без»

Саме без. :) Всі ці бути в більшості випадків така сама магія, коли діло заходить трохи далі простих дефолтних конфігурацій. Думаю, новачку з ним буде дуже не просто.

«Возможно, кто-то имел опыт проверки аксиомы Эскобара?»

я перешел с PHP на Java лет 5 назад. Было немного сложно привыкнуть к «strong typing» & Exceptions. Но после того как немного поработаешь и разберешься что к чему, то на PHP вообще смотреть не хочется.
По поводу изучения — сильно зависит от того что вам подходит больше видео, статьи или книги? Я начинал с этого курса www.coursera.org/...​tion=java-object-oriented, после поготовился к сертификации education.oracle.com/...​e-11-developer/trackp_815, небольше статьи и туторилы www.baeldung.com из книг Java in a Nutshell shop.oreilly.com/product/0636920156727.do
В любом случае успехов!

5 лет назад и пхп был другой совсем, к слову. Даже PHP 7 еще не вышел.

Спасибо, но всё-равно нет. Я в php разочаровался и сталкиваться с ним больше не хочу

Так я вроде и не предлагаю. Просто мимо проходил и вижу, что ситуация с того времени сильно поменялась.

анекдот какойто, 80-90 процентов вебсайтов в мире пользуют пхп, а тут такая заява — я в пхп разочаровался.

86%. Як у Пу. А всі інші мови то ліберастичні.

вообще-то сперва пхп либералистичен просто потому что настоящие мужики писали на перл но настоящих мужиков мало и стала толерастия где каждый может писать на пхп селяви ))

Ну так дело-то вкуса, мне PHP не нравится, вам нравится — вот и замечательно! Разные люди — разные вкусы и предпочтения

Количество не признак качества.

Та ну прям совсем другой ? К слову 5 лет назад 7.0 уже вышел i.imgur.com/HsMnGIz.png

К слову 5 лет назад 7.0 уже вышел

когда отсчитывали 5 лет — калькулятором пользовались, надеюсь?

ищи книги Якова Файна, типа жава за 24 часа и т.д.

Дякую! Але в мене підхід інакший, подобається детальне вивчення на pet-проетах

Интуитивно неочевидная вещь в Java после PHP: в жабе код живёт в памяти долго, здесь мало такого что запустил-и-забыл. А значит ты куда меньше внимания уделяешь конструкторам, зато заботишься о том чтобы ничего в памяти не оставалось брошенным. Ну и разумеется, невозможность подсунуть новый код во время работы приложения. Конечно, способы есть — от физического разделения программ на несколько и общения между ними по протоколам, до JRebel и ему подобных франкеншетйнов — но как по мне, первые прочно и надолго обосновались в энтерпрайзе, последним же не место в продакшене, хотя в разработке ценность безусловна.

Здесь многопоточность из коробки, а вместе с ней и DeadLock ситуации. Это самая собачья работа в жабе: когда код выглядит прекрасно написанным, но на деле приходится переписать его в уродца просто потому что он многопоточный. Прям как ПДД. Именно с многопоточностью разбирайся, не стесняйся потратить на это время, и ничего не бросай непонятым.

переписать его в уродца просто потому что он многопоточный

почему нельзя взять либу которая делает многопоточку неуродливой? java 5?

Потому что неуродливая многопоточка сам не поймёшь откуда навалит несколько гигабайт свежего в лог за сутки, при том что вроде ж на полигоне всё работало. Особенно весело когда сервак тебе неподконтролен и этот лог тебе присылают недельки через три, пытаясь запихнуть его в e-mail.

Те задачи, которым прикрутили многопоточку «из коробки», в большинстве своём в многопоточке и не нуждаются вовсе. Настоящая многопоточка нужна для написания кода с разным жизненным циклом. И вот когда наступает необходимость объединить такого кода поболее двух потоков — тут и начинается КЛАССИКА программирования, которая работала ещё до жабы, и переживёт ещё не одну сотню жаб.

Простой пример: нужно чтобы сервер (сильно чужой) обработал запрос. Запросов не так чтобы много, в пиковом случае 100 000 в час, но вот незадача, сервер иногда не отвечает. Иногда отвечает с опозданием. И его опоздания слишком часто зависят от того что ты прислал. И разумеется иногда шлёт неполные ответы, иногда не так запрос понял (недолетели пакеты). Так вот, надо чтобы оптимально держать нагрузку, на грани фола, чтобы все знакомые тебе ошибки были исключены из лога и велась статистика (при том что поток ошибок общий), и чтобы обрабатывались успешно СЕРИИ запросов от клиентов, а не только случайным образом отказывать. И длина серии примерно 2-10 минут. И вот этого дерьма в корпоративном секторе просто адское количество.

Потому что неуродливая многопоточка сам не поймёшь откуда навалит несколько гигабайт свежего в лог за сутки, при том что вроде ж на полигоне всё работало.

Ну дак любая технология принцип работы которой писателю кода неизвестен чревата

несколько гигабайт свежего в лог за сутки
в большинстве своём в многопоточке и не нуждаются вовсе

ты сейчас предлагаешь запросы в один поток обрабатывать?

И вот когда наступает необходимость объединить такого кода поболее двух потоков

да вон для этих целей выдумали ораву конкарренси примитивов разной степени кривости, чекеров и проч.

Запросов не так чтобы много, в пиковом случае 100 000 в час, но вот незадача, сервер иногда не отвечает. Иногда отвечает с опозданием. И его опоздания слишком часто зависят от того что ты прислал.

 ну если за сайд эффектами не следить как положено, эта фигня гарантирована.

Так вот, надо чтобы оптимально держать нагрузку, на грани фола, чтобы все знакомые тебе ошибки были исключены из лога и велась статистика

Потоки из реактивного програмирования на что?

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

Задача решается правкой понятия «неуродливой».

Есть многопоточность именно библиотечная, там где грубо говоря задачи с естественным паралеллизмом идут в предоженный им пул потоков и там кошерно рулятся вплоть до быстрого управления параметрами пулов.

А есть многопоточность задач с длинным жизненным циклом или захватывающих «бутылочное горлышко». Их нужно понимать, а не только вызубрить набор нужных слов. И есть задачи где этих самых бутылочных горлышек много, и приходится плести из них икебану — и вот тут уже помимо либ нужно знать МАТ.ЧАСТЬ, и не только знать, а ещё и уметь её тестировать, что не самая простая задача.

Ну и разумеется, невозможность подсунуть новый код во время работы приложения.

Groovy ) Постійно юзаю )

менно с многопоточностью разбирайся, не стесняйся потратить на это время, и ничего не бросай непонятым.

За майже півтора року, поки ніразу не знадобилося... Все spring хендлить... (через 5 хв)Нижче почитав твою переписку... Можеш нічого не пояснювати, дякую )

зашло на ура, только вот обратно очень сложно, много в php начало раздражать после java. Если работать с symfony после java еще можно стерпеть, а вот работать с таким как laravel, ну нафиг.

Симфони больше дает запах интерпрайза, чем Лара?

Та оно насквозь им пропитано, ещё и в Java style

да, значительно, раньше еще Зенд неслабо так давал, но сейчас он малопопулярен

ларавал был слеплен, чтоб его можно было легко взять и получить готовый каркас аппликухи с авторизацией и прочим из коробки. Но местами он отвратителен, многое прибито гвоздями или как попало сделано, очень многие вещи раздуты и пропитаны насквозь DI. Скажем ларавел терпим, но не одобряю его. Он превратился в коммерческий проект, который тейлор дает на аутсорс всяким не очень грамотным девам. И там на пулл реквесты ложат, забивают, или закрывают вообще без объяснений

Хлопцы а кто использовал JPHP habr.com/ru/post/216651 и PHPhipHop www.zzz.com.ua/blog/php7-vs-hhvm
Если да то как оно?

Эскобар использовал, он же эксперт

Лайна більше, код заплутаний вже out of the box. Тобі щоб зрозуміти чому нічого не працює як задокументовано доводилося читати сорци PHP? А з жабою доведеться.

Лайно жаби навіть не в тому, що вона жаба, а в тому скільки під неї «нового» написано, малосумісного зі старим, що по суті робить те саме. І тобі треба знати все це нове-старе кожного покоління маразму, при тому що ніфіга до кінця не дописано, куча «особєнностєй» (читай багів), звісно ж не документованих.

Якщо ти за день не сходив пару разів на stackoverflow, цей день неділя.

Ага, и допиленное, и документированное адекватно без мегатыщтонн маркетингового булшита? И разумеется без необходимости что-то присобачивать к нему на жабе :)

Если для своего проекта, ты прав. Почему бы и не котлин. Но если для работы... с тебя всё равно потребуют знания жабы, а далеко не Java Core.

Знания java core в моем понимание это синтаксис, условия,циклы,массивы,многопоточность , шаблоны и паттерны программирования) Spring это уже фраимворк

И для справки без знания джавы в котлине ловить нечего, так как котлин внутри себя генерит код джавы

После твоего ответа я сразу понял зарабатываешь ты мало))))

комментарий 10 грн. а теперь посмотри сколько у него комментариев, и это только с этого аккаунта )

я мав. Это даже сравнивать сложно. Это как океан и речка. рекомендую видео Мирончика.

Це як купа калюж проти величезного болота. Під яким другим та третім шарами ще болотця, кожне зі своєю трясиною.

Рівень документованості: бла-бла-бла-які ми хороші та космічно спрямовані, поклоняйтеся нам, а документацію ми колись напишемо, краще купіть книгу двотомник «ях анонірувать на JShinemaHuynia» — звісно ж тим самим бла-бла-бла та посиланням в дальніє стєпі типу «якщо ви знакомі з Ізєю з Дерібасівської, то ви знаєте що треба робити».

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

Дайте, будь ласка, посилання?

У него просто очень толково обоснован переход от джавы к джаве веб...

Подписаться на комментарии