Ответ на пост «Стоит ли становиться Java разработчиком в 2020»

Это мой первый пост на DTF, ранее я не оставлял даже комментариев, но не мог не предостеречь читателей от того бреда что тут написан. Сам являюсь Java разработчиком.

В закладки
Аудио

Статья написана очень некомпетентным человеком, у которого либо не получилось войти в ИТ, либо он только только начинающий программист (опыт работы максимум пару месяцев), который попал в не самую хорошую компанию. Далее я укажу на те моменты, по которым для меня это очевидно.

«Java – это не про создание, а про поддержку». Главным мерилом популярности языков программирования является так называемый индекс TIOBE, согласно которому, Java является самым популярным языком программирования в последние годы. Это знает каждый программист. В целом это уже говорит почти всё об уровне компетентности автора. Хорошие Java программисты являются одними из самых востребованных специалистов на рынке труда (легко можно посмотреть количество вакансий на hh). Не спорю, проекты на java 6 еще существуют (ведь java это самый суровый энтерпрайз), но они уже не многочисленны, да и поработать джуном полгода-годик на таком проекте совсем незазорно, как раз усвоить базовые вещи. Проекты на java 5 скорее страшилки автора, опять же, полгода опыта работы и на таком проекте на старте карьеры вреда не принесут абсолютно никакого.

Автор упоминает «дедов». Тут особо прокомментировать нечего, отдельная взятая дедовщина в отдельно взятой конторе (вместо программирования контора может быть абсолютно любого профиля, даже городская поликлиника). Скорее всего автору кроме задач по закрытию примитивных багов никаких не дают.

Далее следует очень субъективное мнение автора, проследуем по пунктам:

1.Игровая индустрия – крупица информации, где автор во многом прав. Но на другую чашу весов от себя добавлю, что игровая индустрия считается самой изматывающей отраслью, с далеко не самыми высокими зарплатами в сфере.

2. Автотесты – непонятно вообще причем здесь тестирование. Автотесты пишут QA специалисты (специалисты по контролю качества/тестировщики). Никто в здравом уме не будет нанимать Java разработчиков с не самыми маленькими зарплатами для написания автотестов, это банально неразумно, так как это дорого; для написания автотестов используются в основном другие языки и инструменты; для этого можно использовать менее квалифицированных т.е. дешевых специалистов. Язык автотестов это совершенно не обязательно язык приложения. Опять же на вики хорошо описано что такое автоматизированное тестирование. Собственно это ярко свидетельствует о том, что у автора в коллективе ярко выраженная дедовщина, и ему дают самую простейшую работу. В контексте автотестирования автор упоминает такие языки как Python и Scala, что опять опять же говорит об авторе как о человеке, который ничего не понимает в этой сфере.

3. Мобильная разработка – тут автор хотя бы угадал с языком. Да, Kotlin используется в мобильной разработке, но даже в ней ему далеко до Java, так как он банально слишком молод. Практически все ваши android приложения написаны на Java. С точки зрения бизнеса, вам банально гораздо легче найти 10 java программистов чем 10 kotlin программистов.

4. Бэкенд(Spring) – почему автор написал Web не совсем понятно. Простите меня читатели, постараюсь пояснить как можно короче. Spring – это по сути основной фреймворк для разработки приложений на Java(в том числе и Web, но это лишь небольшая часть). Этот фреймворк – реализация набора спецификаций/требований комитета Java (есть грубо говоря среди остальных и Web спецификация). Есть и другие реализации, но так сложилось что Spring просто самый популярный. Им овладевают не счастливчики, а 99% процентов java разработчиков. Далее я уже не буду говорить о степени квалификации автора, так как он явно слышал звон, да не знает где он.

5. Фронт – можно, но, канечно не нужно. Здравый бизнес обычно выбирает язык под свои задачи, а не наоборот. Собственно для задач фронтенда есть инструменты лучше чем Java.

Извините, если вышло скучно и сухо, но не смог промолчать, когда в интернете кто-то не прав.

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

Написать
{ "author_name": "Алексей Ельников", "author_type": "self", "tags": [], "comments": 121, "likes": 170, "favorites": 104, "is_advertisement": false, "subsite_label": "flood", "id": 95143, "is_wide": false, "is_ugc": true, "date": "Mon, 20 Jan 2020 22:55:20 +0300", "is_special": false }
0
{ "id": 95143, "author_id": 130988, "diff_limit": 1000, "urls": {"diff":"\/comments\/95143\/get","add":"\/comments\/95143\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/95143"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 64955, "last_count_and_date": null }
121 комментарий
Популярные
По порядку
Написать комментарий...
31

Индекс TIOBE (TIOBE programming community index) — индекс, оценивающий популярность языков программирования, на основе подсчёта результатов поисковых запросов, содержащих название языка (запрос вида +" programming")[1].

Т.е. это девы часто гуглят как в java что-то пофиксить. И это лишь подтверждает приведенный тезис о том что java это про легаси код)))

Ответить
20

Я тоже считаю, что TIOBE не очень показателен. Имхо, лучше смотреть на рейтинг на github - он лучше отражает реальное положение вещей: https://madnight.github.io/githut/#/pull_requests/2019/4

Тут Java на третьем месте после JavaScript и Python, что тоже очень хорошо.

Ответить
7

Совершенно верно. Python уже давно обогнал, а прямой конкурент в лице .NET за 5 лет вырос в 2 раза. Вот и ответ, стоит ли в 2020 становится java разрабом

Ответить
2

Причём вообще надо отметить что рейтинг github он отражает гитхаб, а не рынок труда.
По этому рейтингу в 2014 Ruby было впереди Java.
Только вот я абсолютно уверен что в 2014, как и в 2019 работы джавистами предлагалось куда больше чем рубистам.

Значительная часть Java разработки это "скучный" бэкенд, на джаве редко пишут прикольные вещи, которые хочется пойти и выложить на общее обозрение.

Ответить
1

Можно вообще на рейтинг не смотреть и ставить JS в github-статистике на первое место ближайшие лет 5- `пока не внедрят новый язык в браузеры ${лет}`.

Ответить
0

Мне кажется js язык не самого широкого применения от сюда такой результат. Все на нем не напишешь. Точнее написать то наверно можно но лучше так не делать.

Ответить
2

Несколько лет назад так и было, но сейчас на JS пишут и веб-сервисы, и бэкэнд, и даже толстые клиенты. Не могу сказать, что это хоросё, ведь язык задумывался для других целей, но имеем, что имеем. Даже для котлина сделали транслятор в js, а на котлине можно писать практически все то же, что и на джаве

Ответить
10

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

The ratings are based on the number of skilled engineers world-wide, courses and third party vendors. Popular search engines such as Google, Bing, Yahoo!, Wikipedia, Amazon, YouTube and Baidu are used to calculate the ratings.

Ответить
2

Как по мне, TIOBE - вообще ни о чем индекс. Согласно ему, VB популярнее JS. Прям ссюр какой-то.

Ответить
1

Это выглядит как плохой рофл но так то да. Vb.net пользуется спросом изза легаси(ибо vb тоже живой), доступом до clr и своей казуальностью. Если бы тут еще фигурировал еще скажем vba с екселями то они бы в топе тоже гдето были ибо такой бизнес.

Ответить
0

Я вполне могу поверить что VB и живет до сих пор из-за легаси, но все-таки, JS никак не может быть ниже VB. 

Ответить
0

блин, вот искал где читал про vb.net, так и не нашёл: короче, на западе vb.net вот прямо очень в тренде

Ответить
0

А самое главное, что почему-то упускают из виду, что VB .NET это составляющая всё той же .NET платформы, которая медленно но верно набирает популярность

Ответить
5

Блин, я этот «Кукарек<кококо>» на всё жизнь запомнил, настолько это забавно.

Хотя вроде же Джава всё же перешла на нормальный синтаксис, не?

Ответить
10

Начиная с 7 можно делать Кукарек<кококо> кукарек = new Кукарек<>
Начиная с 10 можно делать var кукарек = new Кукарек<кококо>

Но вообще проблема Java в том что иногда там надо написать много буков осталась и в какой-то мере будет всегда.

Ответить
8

Сочетает простоту синтаксиса с++ со скоростью исполнения питона (с)

Ответить
1

На всякий случай спрошу - вы же знаете что "джава тормозит" это уже давно как мем?
Стартап у джавы медленный, это да. А скорость работы более чем достойная.

Ответить
0

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

Ответить
1

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

Ответить
0

В этом мире ещё вопреки логике существует эклипс и IDE на его базе, а одна мелкая шарага (ST) свой кроссплатформенный софт полностью перевела на жабу. Памяти они жрут даже больше хрома, имея всего пару экранов.

Ответить
0

Котлин частично разгружает синтаксис, но в самой жабе это всегда будет для обратной совместимости.

Ответить
25

tl;dr: да, Java очень популярная. Нет, становиться Java разработчиком в 2020м не надо. Разве что только если очень нравится, и не пугают риски.

 Главным мерилом популярности языков программирования является так называемый индекс TIOBE

Дружище, почитай что это за индекс. Там прямо по твоей ссылке описание. Внимательно почитай. Подсказка: если сотня джава-кодеров будут постояно искать ответы на вопросы вроде "почему в сраной джаве ничего не работает", этот рейтинг будет расти.

Стоит чуть сместить критерий (поиск туториалов, чтоб посчитать популярность входа в язык, а не количество копипаста-кодеров), случайно получаем такое: http://pypl.github.io/PYPL.html
Упс: пайтон выигрывает в полтора раза.

Померяем другой линейкой (по гитхабу): https://www.benfrederickson.com/ranking-programming-languages-by-github-users/
Упс: джаваскрипт вылез вверх.

Покликаем по разным вкладкам на годовом отчёте stackoverflow: https://insights.stackoverflow.com/survey/2019#most-popular-technologies
Упс, чего только не вылазит, только не java (там очень много категорий, некоторые про абсолютные величины, некоторые про рост).

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

Я не пытаюсь сделать вид, что джава мертва, или что-то в этом роде. Это было бы глупо, т.к. всякий корпоративный софт будут поддерживать ещё десятилетиями, да и с Андройда на Фьюшу Гугл будет перелезать годами (если вообще получится), но таки это не тот вопрос, который был задан. Вопрос был про "Стоит ли становиться Java разработчиком в 2020"

Java — очень популярный язык (по многим метрикам — самый популярный), но его популярность падает. Она всё ещё очень высока, но запрыгивать на этот поезд в 2020м году — это как учиться на COBOL-программиста на закате его славы. И работа будет, и если пригреешь жопу на хорошем месте, то можно там проработать хоть до конца жизни. Но всё новое будет мимо тебя.

Machine learning? Мимо. Серьёзный веб? Частично мимо. Геймдев? Весь мимо. Трейдинг? Мимо. Корпоративный спагетти-софт, наглухо завязанный на старое говно от Oracle? О, привет Java. Ты там кругом и везде.

Кроме того, java-программистов хоть жопой жуй. Без какого-либо роста в вакансиях, в какой-то момент спроса может стать меньше, чем предложения. Плюс, фактор Oracle всегда висит над головой как топор.

В общем, ты молодец, что пытаешься восстановить справедливость в интернетах, но там всё не такое чёрно-белое, как может показатсья Java-программисту.

Ответить
7

Что забавно, вы упомянули трейдинг, так он почти весь написан на Java) Весь финансовый сектор, банки, биржи все сидит и будет сидеть на джаве. Можно говорить и с другой немножко стороны. Сейчас время сложных комбинированных систем, написанных на разных языках, например Java - бэк, JavaScript - фронт, инфраструктура и CI - Python, Groovy, машинное обучение - Scala, десктоп - C# и так далее, не говоря уже о SQL, HTML, XML, CSS по сути полноценными языками не являющимися, но без которых сложно себе представить сложный современный стек проекта. В общем я что хотел сказать, под задачу выбирается язык, а не наоборот

Ответить
14

Мы про одно и то же говорим? Я — про гипер-оптимизированный код на C++, который должен принять решение на сколько-то наносекунд быстрее, чем код конкурента. Если что, godbolt написан чуваком из финансов (bloomberg, кажется) для повседневной работы. Там сейчас тренд — перелазить на fpga вообще, где есть смысл. Ну то есть абсолютно противоположное направление от Java и подобного. Если ты про бэкэнд сайта магазина Челябинский Шиномантаж, то это не совсем тот "трейдинг", который я имею в виду.

Хочешь задачи — давай про задачи поговорим.

Бэкэнд: NodeJS как платформа удобней (один язык с фронтэндом), C# трендовей, всякие старые PHP/Ruby также никуда не ушли, а если надо лютый перформанс (например, ты пишешь поисковик) — Go и C++.

Машинное обучение: ну давай не обманывать обманывать друг друга, оно всё в пайтоне. И Scala != Java. Я понимаю, что чем-то родственные языки, и гоняются на одной и той же VM, но давай не жульничать, а то сейчас кто-нибудь начнёт заверять, что все Unity игры — это C++ игры, т.к. там весь код прогоняется через IL2CPP (по причине полной непригодности виртуальной машины для задач вроде современных игр). Но если тебе очень хочется обобщать, можно сказать что-то вроде "C# — это чуть более новая и мнее кривая Java" и быть примерно в такой же мере неправым.

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

Для начинающего программиста я б вообще посоветовал какой-нибудь python. В какой бы язык человек потом ни ушел, раз в пару месяцев почти наверняка придётся чинить какой-нибудь скрипт на питоне. Т.е. с точки зрения "учить чтоб наверняка пригодилось" — самый безопасный вариант, в то время как с Java может и не сложиться.

Ответить
6

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

А ещё богатая экосистема, её поддержка, обратная совместимость, простота поддержки в будущем. Богатый тулинг.

Бэкэнд: NodeJS как платформа удобней (один язык с фронтэндом)

Ну и? Фронтэнд и бэкэнд всё равно разные вещи.
Я уж не говорю что чем больше проект, тем выше ценность статической типизации. И TypeScript это такой себе ответ.
Да и вообще - "картинка про Javascript и лучше буду проституткой".

Плюс, фактор Oracle всегда висит над головой как топор.

Не висит. Разберитесь в теме сперва. Java уже давно как открыта, и есть дофига реализаций JDK.

В одном вы правы - Java это не для тех случаев когда шишка горит и хочется сесть на что-то новее нового, ещё не протестированное временем.

А риски что Java куда-то денется - смешно. Слишком много всего на ней работает. Java-капец предвещают примерно вместе с вендекапец, но тем не менее вакансий за последние годы меньше не стало и их дохрена.

Ответить
4

А ещё мне интересно что же комментатор выше имел ввиду под "серьёзным" вебом.

Значительная часть Amazon (и AWS и другие) работает на Java. Или AWS нынче считается игрульками?

Ответить
1

 Ну и?

Это твой взгляд на мир, и он не совпадает со взглядом на мир огромного количества пользователей Node.js. Я не буду копипастить их доводы, ты и сам наверное сможешь нагуглить. Твоё дело не согласиться, а их дело наплевать на твоё мнение.

 Не висит. Разберитесь в теме сперва.

С менторским тоном у тебя всё в порядке, а с фактами как-то пока не очень. Начни откуда-нибудь одсюда что ли: https://en.wikipedia.org/wiki/Google_v._Oracle_America

Почитай секции внизу. Кстати, битва идёт до сих пор.
https://www.theverge.com/2020/1/14/21059180/oracle-google-supreme-court-copyright-lawsuit-amicus-brief-filings

Чем глубже копаешь, тем абсурднее кажется весь кейс, но это никогда не остановит Оракл.

Если ты никогда не работал с Ораклом напрямую, то ты очень счастливый человек. Люди, которые взаимодействовали с ним хотя бы раз, особенно по вопросам лицензий, опасаются его как чумы. Не важно, насколько что-то свободное, открытое, бесплатное, и т.д. и т.п. Если есть риск, что Оракл может насрать тебе на крыльцо, он это скорее всего сделает.

Из свежего: вон есть открытая, свободая имплементация ZFS. Полностью с нуля. Полностью написанная людьми с хорошей репутацией. Что говорит Линус? Что ни за что не согласится мерджить что-либо имеющее отношение к ZFS в ядро, пока не получит официальное письмо от Oracle, подписанное их юристом или желательно самим Ларри Эллисоном, в котором написано что с этим всё ок, и конечный результат будет под GPL. https://www.realworldtech.com/forum/?threadid=189711&curpostid=189841

Ты можешь не соглашаться, что фактор Оракл — это проблема. Но опять же, твоё мнение в этом вопросе менее важно, чем мнение людей, которые будут принимают решения в новых крупных проектах. Можно быть уверенным, что чего-то нового и подобного Андройду (в смысле "гигантский проект, вся жизнь и будущее которого завязано на Java, и благодаря которому Java получила второй пик популярности") не выйдет никогда, даже если в конечном итоге верховный суд примет сторону Гугла (и когда улягутся все бурления говн насчёт апелляций). Идиотов мало.

Ответить
2

и конечный результат будет под GPL

https://en.wikipedia.org/wiki/OpenJDK
License: GPLv2 with linking exception
OpenJDK is the official reference implementation of Java SE since version 7

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

Ответить
0

Чувак, пиши скорее письмо в верховный суд США, а то там уже десять лет разобраться не могут с Ораклом (ну начали с инстанций пониже, но вот докатились). А ты их быстро так, раз — и одной ссылкой победил весь юридический отдел злой корпорации.

И попросись в Гугл, если ты там ещё не руководитель отдела. Ты им только что выиграл крупнейший IT-иск прошлого десятилетия. Они вон сколько лет не могли, а ты прям одним комментарием восстановил всю справедливость.

Не устаю поражаться таланту публики на ДТФ, короче.

Ответить
0

Чувак, я буду краток:

Если меня спросят 100 раз кому поверить - лицензии GPL2 или какому-то Васяну, я 100 раз скажу: Васян дебил.

Даже если Васян смог нагуглить судебный иск в котором фигурировало слово Java.

Ответить
0

Человек Вам правильно написал. Тот же NodeJs как и любой другой язык с динамической типизацией в ближайшее время ни один более мнее серьезный бизнес не будет использовать в качестве основного бэкэнда. Комьюнити NodeJs может считать что угодно, но бизнес и корпоративный сегмент мыслят совсем другими категориями. Может быть это стильно, модно, молодежно, но вместе с тем - это медленно и не надежно

Ответить
0

Что динамическая типизация плоха — правда. Что это имеет какое-то значение для будущего Java — неправда.

Десять секунд гуглинга помогли бы не писать глупость про "ни один более мнее серьезный бизнес". Ну блджад, сложно что ли? Ну вот первый список в выдаче https://www.simplytechnologies.net/blog/2018/4/18/8-top-companies-that-rely-on-nodejs

Пэйпал. Ебей. Убер. Я понимаю что быть фанбоем — это весело, но реальность не согласна, извините. Можно выть на луну и громко ругаться, что мир не такой, как хотелось бы фанбоям, но миру в общем посрать.

Java — не центр мира, а один язык из списка альтернатив, и довольно старый. Максимально близкий к ней по духу C# многим людям куда приятней. Если завтра ко мне придёт человек "давайте напишем вот эту новую хрень на Java, потому что нам нужны такие-то и такие-то её преимущества, и не важны вот такие-то недостатки", я спрошу "окей, но тогда почему не C#?", и ответ будет "а, ну да, C# тупо лучше почти во всех отношениях".

Под что-то лучше подойдёт go. Под что-то вообще старый добрый C++. У Java нет такой ниши, где она была бы лучшим вариантом, кроме ниши "корпоративного легаси, потому что весь старый софт уже на java". Ну нету, извините. Не завезли. Так получилось.

Ответить
1

Никто тут и не писал о том что Java лучший язык, более того у него полно своих проблем. Пост был совсем не о том что Java панацея от всех бед. Но то что Вы утверждаете, что Java только для корпоративного легаси, ну если Вы не знаете зачем тогда пишите) Очень много новых модных микросервисных продуктов начинаются именно с Java. И Google, и Amazon и остальные IT гиганты так же используют джаву каждый день. Есть куча сфер, где этот язык является в данный момент лучшим выбором.
Я понимаю что Вы хотите сказать, но разводить холивар не хочу) Я не считаю джаву лучшим в мире языком, я считаю что язык выбирается в соответствии с той задачей, которую надо решить.

Ответить
0

Был пост "Стоит ли становиться Java разработчиком в 2020".

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

Ты пытаешься опять что-то подтасовать и исказить смысл, но не надо, ок? Гугл уходит от явы бегом (ну посмотри что там выбрали для Фьюши). Амазон уходит от всего Оракла целиком. Старый код никуда не денется (ещё очень долго будут новые версии андройда, особенно если fuchsia не взлетит, и с амазонами та же беда), но это та же аргументация, что с PHP. Используют ли PHP в 2020м? Да. Много кто. Даже гиганты. Но это легаси код и плата за решения, принятые много лет назад.

Я не знаю, застал ли ты момент покупки Sun. Отношение к языку было кардинально другим тогда, и вообще Sun был во многом противоположностью Ораклу. Было очень много оптимизма насчёт темпов развития языка. Многие верили, что Java догонит и перегонит C# по всем фронтам. Многие аргументы, которые ты сейчас можешь прочитать про C# vs Java работали в обратную сторону ("хрен знает что MS сделает с C#", и в том же духе). Но времена изменились.

Гугл остался с наследством от покупки Android Inc в 2005м. Амазон остался с кучей Оракловских контрактов задолго до появления AWS, ну и так далее. Да, они используют джаву каждый день. И да, джава вряд ли уйдёт оттуда в ближайшее десятилетие. Но это всё равно легаси. Запрыгивать на этот поезд не надо. Там уже существующих java-программистов более чем достаточно, и притока спроса на них не ожидается.

Что я и пишу в первом абзаце моего комментария:

tl;dr: да, Java очень популярная. Нет, становиться Java разработчиком в 2020м не надо. Разве что только если очень нравится, и не пугают риски.

Ответить
–1

Вот не хотел я переходить на личности) Вы обычный трепач, который ни дня не работал даже на среднем проекте хотя бы на 10000 разрабо/часов) Тут речь уже даже не о джаве. Это просто действительно бросается в глаза. Вы совершенно не понимаете как собираются требования бизнес анализом, не знаете как взаимодействует заказчик с разработчиками, никогда в жизни не участвовали в поставке хотя бы одного релиза.
Тут были комментарии, в которых видно по одному предложению, что люди из ИТ сферы.
Ваш стиль говорит лишь о том, что вершина вашего мастерства это JS скрипты на гитхабе трейни уровня) Эта ветка комментов просто тупиковая, так как Вы видите только то, что хотите видеть, при этом имея какие-то самые поверхностные представления о том, каким образом устроено современное ПО и как оно создается

Ответить
0

Что забавно, вы упомянули трейдинг, так он почти весь написан на Java)

Не трейдинг, а финтех.

Ответить
0

Machine learning? Мимо. Серьёзный веб? Частично мимо. Геймдев? Весь мимо. Трейдинг? Мимо. Корпоративный спагетти-софт, наглухо завязанный на старое говно от Oracle?

А блокчейны с ИИ-то на чём написаны? /s

Ответить
17

Как девопс скажу. Проблема жавы- чертовая виртуальная машина java и кривой код разрабов, написанный пьяным индусом под Тагилом.
И вы даже не представляете, какая это боль, когда из 128 гб ОЗУ на сервере - 126 занято демонами джавы(

Ответить
35

Гавнякают разработчики сервисов, а виновата jvm? ლ(ಠ_ಠ ლ)

Ответить
18

У абсолютно каждого языка есть какая то своя сильная проблема, а кривой код разрабов - проблема всех языков, так как это не проблема языка, а проблема квалификации кадров. Поверьте, джава программисты прекрасно знают об оперативной памяти, но у них не всегда есть время на написание хорошего кода, так как бизнесу решение нужно было вчера. Про девопсеров тоже же можно сказать, решили вчера затюнить CI пайплайн, и теперь ничего не работает )

Ответить
8

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

Вот и главная проблема Java. Все заказчики - это типичный Энтерпрайз, которому плевать на качество продукта в 10 случаях из 10. Главное, чтобы хоть как-то работало.

Ответить
2

Я уважаю java кодеров, сам когда то пытался нативки на дроид делать. Но опять же - крик души(

Ответить
3

Мы тут не душим, сам Java не люблю.
Магические строки и рефлексия передают привет.
После C# кушать жабу совсем не хочется (да даже после PHP).

Ответить
0

Не, ну слушай, давай без содомии php, вайти вАйти на нем можно, но уж очень много развелось говнокода на пыхе, а это еще и поддерживать надо

Ответить
1

Я всю жизнь ненавидел PHP (который активно развивался), а потом понял, что нужно ненавидеть JS (который получил убогий аналог типизации в виде TS).

Да, было больно съезжать на PHP после Python. Но я привык. И, в сочетании с популярными фреймворками (Laravel) он совсем не плох.

Ответить
3

ИМХО, JVM не виновата.
Она не должна и не будет кушать столько, сколько вы ей не позволите.
Как пример — IDE от JetBrains.

Ответить
15

При всей любви к продуктам JetBrains, легковесными их назвать язык не поворачивается.

Ответить
4

Справедливости ради, аналогов на уровне продуктов жыдбрейнс сейчас не существует.

Ответить
0

1ГБ памяти на 10 открытых файлов (TSLint + PHP) это не много.
ЦП кушает примерно ничего, если не идёт индексация или установка плагинов/модулей.

Ответить
0

Не виновата(
Это просто крик души(
Просто люди наверное не в курсе про garbage collector, переполнение стека и оптимизацию 😥

Ответить
0

Это проблема всех языков.

Для Java/.NET — кладут на оптимизацию по памяти, пока не припечёт, ибо надеются, что как всё само заработает.
На плюсах и прочих с ручным управлением памяти „эксперты“ допускают дыры, через которые память утекает страшным потоком.

Ответить
3

Это часть местной философии, "купить ещё один сервер дешевле, чем нанять программиста"

Ответить
0

Если дотнет кладёт на оптимизацию по памяти, то объясните зачем в новой версии дотнета ввели такую сущность как Span<T>. Зачем в дотнете нужны классы и структуры? Зачем решили часть данных выделять на стеке, а часть в хипе?

Зачем нужен LINQ, который из коробки ленивый? Зачем нужны Java Stream, которые так же ленивы?

Неужели все эти механизмы и абстракции ввели просто так, а не для того чтобы наиболее эффективно работать с памятью?

Ответить
2

Осталось только, чтобы разработчики это всё использовали :)

Ответить
0

Это именно те фичи для разрабов, которые используются наиболее активно.

Ответить
0

+1 коллеге

Ответить
20

Еее. В полемику я вступать не буду, оправдываясь и рассказывая про мой опыт и работу. Я учёл ваши замечания и принял их к сведению. Я лишь высказал своё мнение, вы поделились своим, собственно для чего данный портал и создан. И я благодарен вам!

Ответить
3

Редкий пример адеватного общения / реакции на критику, без мата, мамок и passive aggressive, но с сохранением лица и своей точки зрения.

Приятно такое видеть.

Ответить
13

Ah, I see you are the man of culture

Ответить
12

С андроидом все чуть не так. Kotlin уже маст хев для мидла и выше. И еще нюанс в том что учить его без джавы смысла тоже нету.

Ответить
10

извините

Ответить
1

Well, but isn't it? ( ͡° ͜ʖ ͡°) 

Ответить
10

О, хабр подвезли. 

Ответить
1

Я не разработчик конечно, но "ответы" можно оставлять в комментариях к постам если что. 

Ответить
17

Мне показалось, что ответ слишком велик для комментария. Ну и честно говоря конечно хотелось, чтобы больше людей увидели эту информацию. Если Вам эта информация не интересна, то могли бы спокойно промотать. 

Ответить
5

По второму пункту: ярый защитник Энтерпрайза в той теме мне утверждал, что писать QA тесты вместо непосредственно тестеров (а ещё заниматься аналитикой) - это норм, и вообще они T-Shape модные.
А по поводу мобильной разработки - бред. Там уже тотально доминирует Котлин. Язык достаточно просто усваивается, если знаком с джавой, при этом мобильные проекты не такие монстры, как типичный бэкэнд, и переводятся на новый язык проще. Джаву, конечно, знать надо, чтобы не потеряться, но это не такая большая проблема, если уже знаешь котлин (и наоборот).
У того автора хоть и есть фактические ошибки, но перспективы он оценил вполне верно. И тут дело не в том, что лучше, а что хуже. Просто кому-то вполне ок работать в «кровавом энтерпрайзе», в котором сейчас вся бэкэнд джава, а у кого-то он только отбивает желание дальше заниматься этим делом.

Ответить
2

Да жава всегда живой была и сейчас живёт. У нас в майнкрафте кодер плагины писал и на хату зарабатывал. Пример глупый ну вы поняли.

Ответить
6

Ага, COBOL и тот живой, мне страшно подумать, сколько Java будет еще жить.

Ответить
9

Джаву уже лет 20 хоронят, все никак не похоронят

Ответить
0

Ага, порвали уже даже не один баян)

Ответить
0

Её ещё и заменить нечем и в ближайшей перспективе не будет.

Ответить
1

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

Все эти индексы показывают ПОПУЛЯРНОСТЬ языка, а не среднюю окупаемость. 

Ответить
–5

Я человек простой: вижу, что кто-то оправдывает Java — ставлю минус. Выходите из своей коробки, на улице 2020.

Ответить
7

Я тоже человек не сложный. Вижу что человек не разбирается в теме - ставлю минус

Ответить
0

Я чтот пропустил, кто-то объявил 2020ый годом хейта джавы?

Ответить
1

Ее чуть ли не с рождения хейтят. Я сам не в восторге от нее, но как крутился в джава-мире, так и продолжаю, ибо денежно

Ответить
1

Что это делает тут? Что вас то в максимализм кидает, от картинки с сиськами до «очерка» о жаве

Ответить
7

Разнообразие контента - это прекрасно

Ответить
2

вот меня интересуют на этом сайте больше всего две темы, это разработка и сиськи, думаю что ДТФ  развивается в правильном направлении.

Ответить
3

хоть я недолюбливаю java, но отрицать что это один из самых востребованных языков просто глупо

Ответить
1

Никто этого и не отрицал, ты читал пост?

Ответить
–2

читал, прям сборник хейта на язык какой-то

Ответить
3

"которого либо не получилось войти в ИТ" - ИТ это не только, блеать, програмирование. Заебали. Не удалось войти в Разработку, а не в ИТ. ИТ это более широкий спектр задач, чем только программирование и разработка. Как буд-то хабр почитал.

Ответить
0

Не совсем понял, какой фронт(?) на Java?

Ответить
–4

какой фронт(?) на Java

javascript

Ответить
22

Да, JavaScript, который не имеет к Java никакого отношения. 

Ответить
–8

Сейчас бы думать что Java не имеет к JavaScript ни какого отношения

Ответить
0

Должно быть тяжело жить в Буквальной Вселенной)

Ответить
–1

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

Ответить
2

JSP, JSF. Я упомянул что можно, но не нужно

Ответить
1

Речь сейчас про шаблоны, которые рендярятся на сервере?

Ответить
1

Нет, это не шаблоны

Ответить
1

Т.е код на JSP/JSF исполняется в браузере? 

Я сейчас не наезжаю, мне правда интересно. 
Не застал эту технологию. 

Ответить
0

В JSP идет смесь HTML + javascript, который выполняется в браузере и Java, который выполняется на сервере. Удобно, что можно произвести нужные расчеты на стороне сервера (или, например подключиться к БД и сделать запрос), а потом передать из java в js значение переменной для отображения у пользователя.

Ответить
2

В общем, это шаблоны.

С тем же успехом я могу назвать Python (Django Template Language)  или PHP (Laravel Blade) фротнэндом.

Ответить
0

Ну например есть vaadin, но никто серьезно на нем фронт не делает. Разве что быстро какую-то админку для сервера запилить.

Ответить
0

Работал в конторе, которая делает ПО для касс и терминалов оплаты. Для фронта юзают vaadin, а там серьезный продукт для управления тысячами устройств сразу. Хотя ты в чем-то прав, по сути админка :)

Ответить
0

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

Ответить
0

Просто я знаю, что единственные язык, который понимают современные браузеры — javascript (со всеми его вариациями).

На сервере вы рендерите HTML+CSS с данными из БД и (если хотите) скриптами на JS.

Ответить
1

На сервере вы рендерите HTML+CSS

Эмм...нет. Ты может создать в блокноте HTML страницу с CSS и запустить ее в браузере (это просто разметка со стилями). На сервере выполняются Java, PHP и иже с ними

Ответить
2

Я, наверное, неправильно высказался.

Естественно, браузеры понимают HTML/CSS/JS (какая там нынче ECMA?).
Мы обсуждали JSP, который рендерит на бэкенде HTML, вставляя в него нужные данные из БД.
Ну и да, сервер может преобразовывать SCSS в CSS, TS в JS (например), хотя, обычно, это делается заранее (Babel, webpack и пр.).

Ответить
1

GWT(Java only), TeaVM и Bytecoder компилируют джаву в js или webassembly. Так что можно всю логику на джаве писать

Ответить
0

При первых трех буквах словил вьетнамские флешбеки, не надо так.

Ответить
2

Мне кажется все зависит от компании, в нашей (одна из крупнейших российских), почти вся серьезная бэкенд разработка, ведется на С++. Новые мобильные приложения, как и сказал автор оригинальной статьи, действительно разрабатываются на котлине. 

С другой стороны, есть достаточно компаний которые может и не разрабатывают новые продукты, но создают новые сервисы к существующим и если основной язык был Java, то тимлид всяко не захочет разводить зоопарк, так что новый год в 9/10 случаев будет написан на java, вероятно новой версии. 

Ответить
2

Kotlin это по сути просто сахар над Java, так что найти разработчика проще простого. Человек за неделю спокойно осваивает базис. Но у него хватает своих проблем (например, слишком много вариантов написать говнокод). А вот его распространение сейчас увеличивается с большой скоростью. Google полностью перевел все гайды, уроки и библиотеки на него и все новые приложения уже пишут используя Kotlin.

Ответить
1

Ни одного объективного контраргумента в статье не увидел. Индекс TIOBE, с которого автор начал, совсем не аргумент, если прочесть что это такое. Зато хватает многочисленных переходов на личности.

Ответить
1

Руковожу проектном отделом в Ростелекоме, развиваю CRM B2C. Страшилки про Java 5 - не выдуманы) Ростелек обслуживает самую крупную базу абонентов в РФ на софте, написанном на пятой джаве и испытывает очень большие боли от этого - разрабов найти сложно, они дорогие, их сложно удержать.
Даже запустили проект по созданию своей CRM, потому что кастомизировать коробку, написанную на Java5 уже невыгодно, долго и неэффективно

Ответить
0

Я участвовал в разработке этой CRM, коробочное решение о котором Вы говорите видимо Amdocs? Если так, то там все таки Java 6

Ответить
1

Для справки:
РТК использует коробку Amdocs’а для обслуживания сегмента В2С.
Центральный регион и Москва работают в версии 7.5/Java5
Все остальные регионы в РФ работают в версии 8.1/Java6
Обе коробки уже давно кастомизируются силами собственных команд и подрядчиков.

Ответить
0

Но о существовании и активной эксплуатации в РТК Amdocs версии 7.5, написанного на 5-ой джаве вы, наверное, не слышали.

Ответить
1

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

Ответить
1

Ну как бы, а где какие-то контр пруфы? Статья вида "Солнце не синее, а зеленое". Почему? 

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

Ответить
1

Все новые проекты на Android начинаю с Kotlin. Брат жив. Впрочем, как и сама Java.

Ответить
1

Java это не только сам язык, но и платформа JVM , под которую есть куча языков на любой вкус. У нас часть бэкенд-сервисов написана на Котлине, сейчас у Спринга, да и остальных фреймворков вышли расширения специально для Котлина, хотя и без них никаких проблем не было. А ведь есть еще Scala - одно из немногих прибежищ функциональщиков, или Groovy для любителей скриптовых языков. Так что несмотря на то, что я не верю что Java загнется в обозреваемом будущем, но даже в этом случае платформа продолжит жить.

Ответить
0

-Как QA, сочувствую вашим тестировщикам, если вы даже unit-тесты не пишете.-

upd: прочитал оригинал, понял контекст. Претензий не имею.

Ответить
0

«Вывод» не написан. Так какой ответ? Да или нет?

Ответить
0

Пока этот язык так обсуждается, он ещё долго будет актуальным.)

Ответить

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fizc" } } }, { "id": 4, "label": "Article Branding", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "cfovz", "p2": "glug" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjog" } } }, { "id": 10, "disable": true, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "disable": true, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-250597-0", "render_to": "inpage_VI-250597-0-1134314964", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=clmf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Баннер в ленте на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudo", "p2": "ftjf" } } }, { "id": 16, "label": "Кнопка в шапке мобайл", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "chvjx", "p2": "ftwx" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvc" } } }, { "id": 20, "label": "Кнопка в сайдбаре", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "chfbl", "p2": "gnwc" } } } ] { "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJwcm9qZWN0SWQiOiI1ZTRmZjUyNjYyOGE2Yzc4NDQxNWY0ZGMiLCJpYXQiOjE1ODI1MzY0Nzd9.BFsYFBgalfu_3oH9Fj-oBhiEgVx976VQfprRahAELFQ", "release": "b62dd097" }
{ "jsPath": "/static/build/dtf.ru/specials/DeliveryCheats/js/all.min.js?v=05.02.2020", "cssPath": "/static/build/dtf.ru/specials/DeliveryCheats/styles/all.min.css?v=05.02.2020", "fontsPath": "https://fonts.googleapis.com/css?family=Roboto+Mono:400,700,700i&subset=cyrillic" }