LINUX.ORG.RU
ФорумTalks

Почему олимпиадники создают такой кривой софт как IDEA?

 


0

2

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

Приходится пользоваться IDEA, так как богомерзкая Жаба. Но редактировать код в ней стало совершенно невозможно. Заметил, что в последнее время (года 2-3) ситуация страшно усугубилась. Кажется, раньше было получше. Вот пару примеров которые прям болят каждый день.

0. Выделяю кусок кода мышей, жму Сtrl-С чтобы скопировать текст. Казалось бы, ну что тут можно сломать то? Этот сценарий работает во всех программах ещё со времен как МакКузик Аллману предложение делал. Но это же IDEA — сразу после выделения куда там вылезло какое-то контекстное меню и Ctrl-C уже не работает! Теперь нужно перед Ctrl-C нажать ещё и Esc. Почти как в моём любимом Emacs.

1. Пишу я `foo()`, жму хоткей вызова меню, Enter — вуаля, заводится локальная переменная. Так как пункт создания локальной переменной самый первый во всплывшем меню. Но это же IDEA — мы сломаем и это! Если в коде есть ошибка то в меню добавляются ещё и другие пункты, и пункт «Создать локальную переменную» уже не на первом месте и Enter так просто не работает.

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

Вот как можно в редакторе для погромистов сломать копирование??? Как так получается, что компания основана очень умными людьми, набирающая толковых олимпиадников делает такой кривой софт? Они что сами ей не пользуются? Или они код не копируют?

P. S.
Еще она стала выглядеть как новогодняя ёлка — в интерфейсе с десяток цветов, каждый элемент отдельным цветом. Может это я сборку для детсада скачал?
А ещё эти дебильные элементы интерфейса, которые появляются только когда на них навести курсор. Раскин переворачивается в гробу наблюдая за таким интерфейсом.

★★★★★
Ответ на: комментарий от Iron_Bug

причём американский финский швед. самый гордый финн из всех шведо-американцев :)

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

urxvt ★★★★★
() автор топика
Последнее исправление: urxvt (всего исправлений: 1)

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

vbr ★★★★★
()
Ответ на: комментарий от urxvt

Но в нашем случае они же пилят IDEA в IDEA. :)

Ну вот судя по этому топику я не уверен. Может раньше так и делали, а потом перестали?

CrX ★★★★★
()
Ответ на: комментарий от Chiffchaff

Разве в JetBrains олимпиадники работают? У меня там работает одногрупница, она вроде ни в каких олимпиадах не участвовала (ну, может я просто не знаю).

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

Олимпиадники в телеге работают. Вот там ошибка на ошибке, и просто кошмарный UX.

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

urxvt ★★★★★
() автор топика
Ответ на: комментарий от KivApple

Нетрадиционная ОС. На работе заставляют пользоваться.

urxvt ★★★★★
() автор топика

Почему олимпиадники создают такой кривой софт как IDEA?

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

adn ★★★★
()
Последнее исправление: adn (всего исправлений: 1)
Ответ на: комментарий от sparkie

И с чего это следует?

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

urxvt ★★★★★
() автор топика
Ответ на: комментарий от urxvt

Винить программистов во всём это давняя юзерская традиция. Но по факту во всём винить надо менеджеров. Они выставляют приоритеты, они выделяют людей. И, конечно же, программист не имеет никакого отношения к редизайнам, это уж на 100% менеджерская забава.

vbr ★★★★★
()
Ответ на: комментарий от CrX

Ну вот судя по этому топику я не уверен. Может раньше так и делали, а потом перестали?

ХЗ, конечно, но вряд ли они её в Emacs или NetBeans пилят.

urxvt ★★★★★
() автор топика
Ответ на: комментарий от urxvt

панель AWS. Всем этим пользоваться ужасно неудобно и неэффективно.

По сравнению с альтернативами AWS Console сделана просто божественно.

ugoday ★★★★★
()
Ответ на: комментарий от vbr

Ну если у них девочки выпускницы факультета психологии решают как должна выглядеть IDE для программистов то ситуация ещё хуже.

urxvt ★★★★★
() автор топика
Ответ на: комментарий от ugoday

По сравнению с альтернативами AWS Console сделана просто божественно.

У меня на старом ноуте (14") при просмотре списка-таблицы файлов в S3 каталоге на экран влазило что-то около 7 строк. Большая часть экрана была занята ненужным мусором и огромными отступами.

urxvt ★★★★★
() автор топика
Ответ на: комментарий от urxvt

Почему психологии? Дизайнер - отдельная профессия. Без олимпиад, вероятно.

Программеры вообще ни при чем. У меня на прошлой работе дизайн гендир делал собственноручно.

unsigned ★★★★
()

Вот как можно в редакторе для погромистов сломать копирование???

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

utf8nowhere ★★★★
()
Ответ на: комментарий от vbr

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

urxvt ★★★★★
() автор топика
Ответ на: комментарий от unsigned

Я имел ввиду менеджеров мелкого звена (project manager). На куче контор я на этих позициях встречал людей никак не связанных (в смысле образования) с ИТ. Знавал таких людей даже в казахстанско-израильском поисковике.

urxvt ★★★★★
() автор топика
Ответ на: комментарий от urxvt

Поверьте, это сущая ерунда, по сравнению с настоящими проблемами.

ugoday ★★★★★
()
Ответ на: комментарий от urxvt

Да, у Alt+Enter по сути две функции. Или добавить импорт, или показать меню быстрых исправлений. Если успеть её нажать до того, как идея сообразила, что надо добавить импорт - покажет меню. Если идея уже сообразила, что не хватает импорта, то вылезает всплывающая подсказка «Import class» и Alt+Enter делает это действие. Но можно в таком случае нажать Esc, всплывающая подсказка исчезнет и Alt+Enter по прежнему будет показывать меню.

В общем суть проблемы понятна, но тут надо понимать, что продуктом каждый пользователь пользуется по-разному и то, что тебе неудобно, другим не обязательно будет неудобно. Я, к примеру, для быстрых рефакторингов вроде выноса значения в переменную либо жму Alt+Ctrl+V, а чаще всего пользуюсь постфикс-действиями. Напиши new Random().var и увидишь, о чём речь.

vbr ★★★★★
()
Ответ на: комментарий от urxvt

У меня отец полжизни отработал на электростанции. Руководство было - суровые советские технари. А в нулевые его постепенно заменили эффективными менеджерами, о технике понятий не имеющими.

Отец перед выходом на пенсию поражался, в какой маразм всё скатилось. Вместо реальной работы половину времени приходилось переписывать одни и те же бумажки. В полуживом состоянии та станция до сих пор.

unsigned ★★★★
()
Ответ на: комментарий от urxvt

Это вопрос такой, философский.

...дураки там не то что до выпуска не доживают, но и поступить туда не могут.

«Образование ума не даёт, оно даёт знания.» ©

sparkie ★★★★★
()

Я тогда-то с этой проблемой почти тоже самое набрал в окошке Гугла. И узнал про настройку Hide floating toolbar ... Чтоб убрать новый тулбар, который фокус при выделении перехватывает и вернуть старое поведение


Но тут, походу, из этого высосут выводы космических масштабов...

F457 ★★★★
()
Последнее исправление: F457 (всего исправлений: 1)

Ваша головная боль от IDEA понятна. Но самый главный вопрос русской интеллигенции пока что, в данном случае, остаётся без ответа. А именно: стоит ли забить на IDEA и просто взять vscode/-codium?

seiken ★★★★★
()
Ответ на: комментарий от urxvt

так как все мануалы в конторе и плагины под IDEA.

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

seiken ★★★★★
()
Ответ на: комментарий от vbr

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

Не зря во всех интерфейсах меню наполняются статически и недоступные пункты просто делаются неактивными. Так человеку не нужно их даже читать, он машинально выбирает тот, который ему нужен. Но только в Жетбрейнс кому-то в голову пришла гениальная мысль: «а давайте мы вообще будем скрывать кнопки и показывать только если над ними появляется курсор».

urxvt ★★★★★
() автор топика

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

Господи ты боже мой, это в IDE редакторах так с созданием переменных *****сь, чтоже там при создании функции происходит страшно представить :)

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от seiken

ви бы ещё рекомендовали его в браузере использовать!

Shadow ★★★★★
()

Кстати, на счёт плагинов, у нас тоже было такое, что все разрабы использовали плагин, который по описанию интерфейса в XML генерил C++ код. A для генерации XML была гуишная, типа, рисовалка, в которой коробочки-компоненты соединялись стрелочками, можно было изментять свойства и проч.

В итоге, когда разрабов, пиливших это дело, уволили в результате поглощения, этот эклипсный плагин, будучи и так недоделанным, перестал работать в новых версиях эклипса, люди стали редактировать XML вручную, и к тому же, генерилка кода заботилась только о нижнем уровне аппа, а все интерфейсные дефиниции C++, относящихся к самому приложению, его логики, всё равно приходилось писать вручную.

Потом в разрабатываемой системе стали использовать другой RPC, отличный от того, который умел генерить плагин, и программисты фактически должны были править XML, без которого вообще ничего не собиралось, плюс, кодировать «стрелочки» руками.

Не сказать, что идея плагина была концептуально кривой, он мог в теории генерить код для 3 различных ОС-платформ, и Эклипс вобщем-то, по идее, больше повёрнут лицом к разработчикам, и тем не менее, такой вот геморрой.

С тех пор я скептически отношусь к корпоративным плагинам.

seiken ★★★★★
()
Ответ на: комментарий от LINUX-ORG-RU

Это мелочи, которые ускоряют написание кода и делают его чуть более приятным. Хочешь - пиши всё сам. Парой галочек все эти выскакивающие помощники отключаются.

vbr ★★★★★
()
Приходится пользоваться IDEA, так как богомерзкая Жаба. 

Используй NetBeans, Eclipse, VS Code, Emacs.

Но редактировать код в ней стало совершенно невозможно. Заметил, что в последнее время (года 2-3) ситуация страшно усугубилась. Кажется, раньше было получше. Вот пару примеров которые прям болят каждый день.

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

0. Выделяю кусок кода мышей, жму Сtrl-С чтобы скопировать текст. Казалось бы, ну что тут можно сломать то? Этот сценарий работает во всех программах ещё со времен как МакКузик Аллману предложение делал. Но это же IDEA — сразу после выделения куда там вылезло какое-то контекстное меню и Ctrl-C уже не работает! Теперь нужно перед Ctrl-C нажать ещё и Esc.

Странно. У меня ничего не вылазило последний раз, когда в них тыкал. Настройки поведения какие? И что за IDE от них используется?

Почти как в моём любимом Emacs.

А что тогда мешало им писать?

1. Пишу я `foo()`, жму хоткей вызова меню, Enter — вуаля, заводится локальная переменная. Так как пункт создания локальной переменной самый первый во всплывшем меню. Но это же IDEA — мы сломаем и это! Если в коде есть ошибка то в меню добавляются ещё и другие пункты, и пункт «Создать локальную переменную» уже не на первом месте и Enter так просто не работает.

Там есть контекст действий. Поэтому такое поведение. Ну и да - IDE упрощает рутинные функции, но не отменяет того, что надо понимать, что человек делает. И вероятно, логика тут примерно такая: «Для того, чтобы тебе дальше писать код надо устранить ошибки»

Вот как можно в редакторе для погромистов сломать копирование??? Как так получается, что компания основана очень умными людьми, набирающая толковых олимпиадников делает такой кривой софт? Они что сами ей не пользуются? Или они код не копируют?

При чем тут программисты вообще? Это результат работы проектировщиков. Программисты тебе функционал реализовали. А основания - вероятно фидбек, после которого проектирование и решилось сделать это так.

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

Ну так цветастое и мерцающее проще продать, чем монохромное и с кучей пугающего функционала «жопой в мир». На сколько помню там можно все вернуть в зад или зафиксировать.

entropy-ronin
()
Последнее исправление: entropy-ronin (всего исправлений: 1)

там вылезло какое-то контекстное меню и Ctrl-C уже не работает!

I feel you, bro.

В (мерзком) яндекс браузере эта шляпа каждый раз выносит просто

frunobulax ★★★★
()
Ответ на: комментарий от entropy-ronin

Для редактирования кода есть редакторы. IDE - это набор инструментов

Это какое-то лукавство. Понятно, что редактор - это далеко не всё, что есть в IDE. Но и говорить, что неважно, какой хреновости редактор в IDE - не правильно.

seiken ★★★★★
()
Ответ на: комментарий от urxvt

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

troizet
()
Ответ на: комментарий от Chiffchaff

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

Iron_Bug ★★★★★
()
Ответ на: комментарий от Iron_Bug

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

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

lenin386 ★★★★
()
Последнее исправление: lenin386 (всего исправлений: 1)
Ответ на: комментарий от lenin386

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

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

Iron_Bug ★★★★★
()
Последнее исправление: Iron_Bug (всего исправлений: 1)
Ответ на: комментарий от Iron_Bug

История - тоже не наука. Она могла бы быть наукой, если бы не была тесно связана с политикой и пропагандой, и не находилась под их давлением. А когда у тебя ложные ангажированные вводные, трудно получить правдивое предсказание. Социология - относится к явлениям скорее техническим, чем к гуманитарным, но не является наукой по той же причине. Однако, философия - наука, лингвистика - наука, искусствоведение - наука.

lenin386 ★★★★
()
Последнее исправление: lenin386 (всего исправлений: 1)
Ответ на: комментарий от entropy-ronin

IDE - это набор инструментов.

Так было в 80-х, когда их строили вокруг Emacs. Возьми ту же IDEA, какой это набор инструментов? Монолитная штука а не набор.

Странно. У меня ничего не вылазило последний раз, когда в них тыкал. Настройки поведения какие? И что за IDE от них используется?

Intellij IDEA, macos

А что тогда мешало им писать?

В Жабе и её проектах все сделано так, чтобы без IDE невозможно было выжить. Не встречал ни одной истории успеха с Emacs+Java. Но даже если это и можно настроить то займет это больше времени чем я проработаю в текущей конторе.

«Для того, чтобы тебе дальше писать код надо устранить ошибки»

Люди не пишут код как ЧатЖПТ — символ за символом, с начала файла и до конца. Да и даже если так писать то код не компилируется в любой момент времени.

При чем тут программисты вообще? Это результат работы проектировщиков. Программисты тебе функционал реализовали. А основания - вероятно фидбек, после которого проектирование и решилось сделать это так.

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

На сколько помню там можно все вернуть в зад или зафиксировать.

Похоже, оно только было когда New UI был new, теперь отката на старый нет. По крайней мере, из коробки, без плагинов.

urxvt ★★★★★
() автор топика
Ответ на: комментарий от lenin386

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

Тогда вычеркивай из наук и биологию. Она тоже сегодня крутится согласно полит. заказов.

urxvt ★★★★★
() автор топика
Ответ на: комментарий от urxvt

В Жабе и её проектах все сделано так, чтобы без IDE невозможно было выжить.

Пару недель назад писал небольшую программку на Java без IDE. В vi (в том самом). Брат жив. «Невозможно» это слишком категоричное слово в данном случае.

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

vbr ★★★★★
()
Последнее исправление: vbr (всего исправлений: 3)
Ответ на: комментарий от urxvt

По крайней мере, из коробки, без плагинов.

Как раз с плагином и можно.

vbr ★★★★★
()
Ответ на: комментарий от vbr

Есть разница между небольшой програмкой и мегабайтами незнакомой Ява-лапши, в которой нужно копаться. С которой очень часто нужно прыгать в байткод каких-то библиотек, написанных в соседнем отделе. Готовое IDE умеет адекватно дизассемблировать и отображать байткод. И таких моментов очень много. Я не утверждаю категорически, что это невозможно прикрутить к Имаксу. Но если всё это прикручивать, да потом ещё поддерживать то не хватит времени на саму работу. :)

urxvt ★★★★★
() автор топика
Последнее исправление: urxvt (всего исправлений: 1)
Ответ на: комментарий от urxvt

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

Но вообще - Idea использует Fernflower декомпилятор (кстати написанный почившим Stiver-ом, который также известен, как автор флибусты). Этот компилятор можно запускать из командной строки. И будет обычный текстовый файл с исходниками. Который можно смотреть простым less.

Про емакс, кстати, я не писал, это та же IDE, я про более примитивные подходы.

vbr ★★★★★
()
Ответ на: комментарий от lenin386

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

urxvt ★★★★★
() автор топика
Ответ на: комментарий от vbr

Ещё один пример - я сейчас прорабатываю переход от Database и HTTP Client плагина на набор shell-скриптов, использующих psql и curl. Пока кажется вполне удобно. Это, кстати, последние два плагина, которые удерживали меня на платной версии. Если пойдёт нормально, то в следующем году подписку я проплачу в последний раз.

vbr ★★★★★
()
Ответ на: комментарий от vbr

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

Тут проблемы две.
* в больших конторах у тебя доступ не ко всем репозиториям в компании. Я даже встречал ограничение доступа к artifactory — ты не можешь скачать любой jar, только те, к которым у тебя есть права.
* Искать исходники на Гитхаб, качать, импортировать в IDE намного дольше чем просто нажать кнопку и прыгнуть в нужный тебе метод.

Но вообще - Idea использует Fernflower декомпилятор (кстати написанный почившим Stiver-ом, который также известен, как автор флибусты). Этот компилятор можно запускать из командной строки. И будет обычный текстовый файл с исходниками. Который можно смотреть простым less.

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

Про емакс, кстати, я не писал, это та же IDE, я про более примитивные подходы.

Из Имакса можно сделать IDE.

urxvt ★★★★★
() автор топика
Ответ на: комментарий от vbr

В vi можно относительно просто подключить выполнение команд, на которые указывает курсор. Шелл в текстовом редакторе получается.

kaldeon
()
Ответ на: комментарий от lenin386

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

Iron_Bug ★★★★★
()
Ответ на: комментарий от kaldeon

В vi можно относительно просто подключить выполнение команд, на которые указывает курсор.

О чём речь?

vbr ★★★★★
()
Ответ на: комментарий от urxvt

Из-за одного заказного проекта лженаукой не станешь, хотя осадочек будет. Но когда и если такое будет постоянно, то потихоньку и станешь.

lenin386 ★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.