From 953263ef84e79ba5f4a01ea16d93da378da9bfae Mon Sep 17 00:00:00 2001 From: Sergey Matveev Date: Tue, 29 Sep 2020 10:24:54 +0300 Subject: [PATCH] =?utf8?q?=D0=93=D1=83=D0=B3=D0=BB-=D0=BF=D1=80=D0=BE?= =?utf8?q?=D0=B3=D1=80=D0=B0=D0=BC=D0=BC=D0=B8=D1=81=D1=82=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit https://habr.com/ru/post/521104/ Недавно с тётей разговаривал на такую же тему. Только она к ИТ отношения не имеет. Она первая сказала что современное молодое поколение живёт типа первыми строчками из поиска Google. Я аналогичное заметил и про ИТ сферу, про молодых программистов в ней, которые мне видятся как такие болванчики, вбивающие вопросы как что-то сделать/реализовать, а дальше copy-paste-ящие ответ с stackexchange. Если я знаю, априори знаю, что мне вот сейчас нужно поднять какое-то говно, но из-за его качества, особенностей ОС/окружения, что-то не выходит, то тоже могу поискать в Google не встречался ли кто с такой проблемой. Если мне это на один раз и забыть -- ищу как болванчик. Но это реально бывает редко. Stackexchange не является абсолютным злом для меня. Но это совсем fallback вариант такой. Буквально сегодня вот искал в нём как вычислить логарифм в dc (теперь он по умолчанию у меня d65882c3c5decb9e2216d7a8de98c1d422c2c42d), которого нет из коробки. Открывать книгу по численным методам, реализовывать это на dc -- точно не хочу, не буду, ибо мне log в dc нужен не настолько сильно (проще python для него уж запустить, если бы ответ не нашёлся) и математику я не хочу вспоминать на таком уровне, ибо забудется. Если бы у меня это отняло 5-10 мин., то just-for-run, ради удовлетворения что сам решил этот пазл, мог бы и отвлечься. Но я с математикой на вы. Я нигде не претендую на работу, которая бы потребовала подобные знания/умения. На работе мы когда взяли juniour-ов, то не один месяц (год?) отучали их гуглить. Нет, не всё настолько было плохо, но у них граница, когда уже захочется залезть в поиск, существенно ближе чем у нас, когда мы ещё полчаса могли бы с чем-то разбираться/читать доку, образно говоря. Вроде бы отучили. В статье даёт цитата декана/доцента: Институт не даёт знаний. Он учит добывать знания самостоятельно. Я неоднократно постоянно повторял похожее: институт не даёт знания, он учит пользоваться головой, варить котелком, думать. Он учит пользоваться справочниками и другими базовыми знаниями чтобы соединив их вместе, в голове, прийти к решению задачи. Все знания/умения/опыт который я получил по компьютерам -- где-то из десятка, возможно пары десятков книг (по базовым знаниям, по сетям, по языкам программирования, по UNIX-ам). Не было никого у кого можно было бы что-то спросить -- всё приходилось разбирать/пробовать самостоятельно. Был бы я на работе, был бы там коллега который бы был не прочь подсказывать, обучать и рассказывать -- наверное это сократило бы годы моего самостоятельного обучения. Но я не уверен что я точно и до конца бы понимал почему именно так что-то делается, а не иначе, как к этому пришли, какие плюсы/минусы. Мне кажется многое бы бралось просто как аксиомы и догмы какие-то. Когда-то был один коллега, глядя на код которого я недоумевал. И такой код/коллега был только один в моём опыте. Берёшь рассматривать какую-нибудь строчку shell-а и видишь что там кавычки/экранирование где надо, видишь что ошибка обрабатывается/перехватывается -- всё тип топ. Берёшь вторую строчку кода: всё наоборот, тяп ляп какой-то. Ошибка явно не перехватывается, но хотя бы я вижу в начале (set) -e есть, поэтому вроде бы не проблема. Но тогда вопрос: а почему на предыдущей строке была, уже явно излишняя, проверка/перехват ошибки? И так чуть ли не в каждой строке целого скрипта. И только потом я стал догадываться что такого результат можно достичь если его, как монстра Франкенштейна, создавать по кусочкам из разных "рецептов" с stackexchange. По отдельности каждый кусочек вроде бы к месту, но в целом картина не складывается, в целом какой-то хаотичный подход. Вот этим то и опасен stackexchange -- задачу вроде бы для галочки, на отвали, есть шанс выполнить, но понимания как она работает, почему так, не будет. Написать и отлаживать её самостоятельно не получится. А остальным... как оказалось, проще переписать с нуля, чем рыться в этом хаосе. У каждого разраба есть свои предпочтения, свой стиль, свой вкус, предпочтения по названию переменных/функций, и т.д.. Очень часто можно сразу понимать кто написал код, хотя стиль подогнан под общекомандные выработанные правила. Это ok, нормально, хорошо. Но вряд ли бывает так, что *осознанно* в разном стиле, с разными подходами может быть всё написано одним человеком. Тётя приводила примеры того, что даже чисто исторические факты молодёжь берёт просто из первых трёх-пяти строчек выдачи поисковика. "Начало Второй Мировой" -- и вот что там напишут, то за веру и возьмут. А с историей и политикой как бы немного опасно. Поэтому, ещё раз убеждаюсь, насколько важно иметь контроль над информацией и иметь возможность пробиваться сквозь цензуру врага, чтобы ой как контролировать умы его граждан. Ага, это я снова про США и её желание пробивать нашу цензуру, технологиями в броузерах. Современные молодые умы верят ВСЕМУ, особенно если это говорит какой-нибудь известный хмырь. Опасно, опасно так жить. Причём наверное такое то было с людьми всегда -- просто раньше не было этих ваших Интернетов с возможностью быстрого поиска ответов. И людям, которые не могут самостоятельно думать, наверное приходилось страдать и заниматься каким-то совсем сторонним делом. А сейчас мол есть возможность устроиться программистом. Но... а есть ли толк от такого программиста? Точнее так: не вредит ли его наличие/присутствие больше, чем если бы его не было и на него не отвлекались бы? Не потратят ли остальные больше времени на поиски ошибок и решения проблем с copy-pasted кодом, который сам автор не понимал? Наверное есть задачи где можно и не понимания делать copy-paste (как я с логарифмом просто доверился, видя правильные ответы на нескольких примерах). -- 2.48.1