Почему ошибаются программисты?

После несерьёзной статьи на серьёзную тему Job Safety Driven Development возникла идея написать о том, как появляются ошибки разработчиков. Вместо этого появилась статья «Почему всё ломается даже у хороших программистов?». Мысль нужно закончить. Уже рассмотрено два краевых случая, давайте посмотрим и на «обычные» причины ошибок программистов. Как в…

Почему ошибаются программисты?
99

Фигасе какая длинная и умная статья. :)
Я вижу большую проблему в обучении программистов в том, что учат неправильно - то есть объясняют всё по-отдельности и сам язык, и его библиотеки. То есть нет такого, что сразу говорят - сейчас мы построим каркас приложения с самыми эффективными библиотеками и покажем вам как надо. Если бы так обучали программистов в компании, тогда никакого большого кода ревью и не надо бы было. А то начинающий программист как слепой щенок начинает программировать так, как нашел в гугле пример и зачастую этот пример не совсем удачный и неполный. Я вижу большую проблему в курсах для программистов, когда на учеников вываливают кучу информации и сам язык и библиотеки. Он оканчивает курс у него голова распухла и ему говорят а вот теперь создай приложение сам - и тут он начинает придумывать что-то, потому что на курсе этому учат совсем мало.

Действительно, есть такие моменты. Мы, когда берём стажёра, просим его написать какое-нибудь несложное web-приложение, например, на Django. Это готовый фреймворк, с готовым каркасом и с хорошими обучающими материалами. Даже не надо чего-то придумывать, все было готово ещё лет дцать назад. Нужно только знать куда человека направить.
Это же в будущем избавит от ситуаций, когда для чего-то маленького и ненагруженного тебе будут предлагать развернуть кубернетис с кейклок для авторизации и кракенном в виде API-гейтвея и микросервисами за ним на экзотических языках. Если приложение маленькое и простое, то стандартных возможностей стандартных фреймворков хватает с головой.

1