Найти в Дзене
Илья Ч.

IT и что в нём происходит Ч.2

Оглавление

Всем привет! Я продолжаю цикл статей о том, что происходит в мире IT. Тем, кто не читал первую часть советую ознакомиться по ссылке: Первая часть стать
Остальным желаю приятного прочтения!

Каждый в этой стране должен научиться программировать, потому что это научит думать

Стив Джобс

Очень интересная и на самом деле умная фраза была сказана Стивом Джобсом была сказана уже более 15 лет назад, однако мне кажется он даже не подозревал о том, что будет происходить в 2024 году в мире IT и как его великая фраза будет воспринята миром. Мне кажется если бы он это увидел сейчас, то выглядел бы как в старом древнем меме "Ничоси"(да, да, накидаю вам в ленту древних мемов)

Ну уж ооооочень старый мем
Ну уж ооооочень старый мем

Ладно, Стив Джобс жил в немного другой стране, поэтому давайте закончим с ним и перейдём к нашей родной и любимой стране

IT в стране, над которой никогда не заходит солнце

И так, что же у нас происходит?

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

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

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

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

Кто это писал? Как это работает?

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

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

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

Это кто-то пытается разобраться в вашем коде, в котором нет ни единого комментария
Это кто-то пытается разобраться в вашем коде, в котором нет ни единого комментария

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

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

А зачем это было сделано? Что хотели решить?

Ещё одна проблема, которая часто приводит к печальным последствиям - это работа в команде. Не знаю как в других университетах, но в моём мне не рассказывали о таких механизмах, как допустим GIT. Следовательно, нас не особо учили работать в команде, больше учили быть "одинокими художниками".

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

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

Примерно так выглядит работа, когда над проектом работают не только программисты
Примерно так выглядит работа, когда над проектом работают не только программисты

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

Реакция бизнеса на фразу "Тут лучше всё переписать с нуля, чем разбираться как оно работает"
Реакция бизнеса на фразу "Тут лучше всё переписать с нуля, чем разбираться как оно работает"

Итоги

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

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

Вот такая реакция будет у тех, кто придёт смотреть ваш код после вас при наличии документации
Вот такая реакция будет у тех, кто придёт смотреть ваш код после вас при наличии документации

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

А сейчас я желаю всем хороших выходных!