Кроме того, не очевидно и не популярно, но опыт тех, кто смог, более ценный, чем опыт тех, кто не смог. Путей сделать правильно и успешно — немного, путей сделать неправильно и неуспешно — бесчисленное множество. Однако, чтобы воспринимать чужой позитивный опыт, необходимо уже иметь какой-то свой опыт, чтобы иметь возможность оценить те подводные камни, которые обошёл владелец позитивного опыта.
Много букаф.
К сожалению, имеет место быть. Причем это только базовые вещи, которые лежат на поверхности. Глубокое и сложное не затрагивается.
Но, пройдет несколько лет, и тексты адаптируются под разные аудитории. Для кого-то они будут покороче, для кого-то более полными.
Фигасе какая длинная и умная статья. :)
Я вижу большую проблему в обучении программистов в том, что учат неправильно - то есть объясняют всё по-отдельности и сам язык, и его библиотеки. То есть нет такого, что сразу говорят - сейчас мы построим каркас приложения с самыми эффективными библиотеками и покажем вам как надо. Если бы так обучали программистов в компании, тогда никакого большого кода ревью и не надо бы было. А то начинающий программист как слепой щенок начинает программировать так, как нашел в гугле пример и зачастую этот пример не совсем удачный и неполный. Я вижу большую проблему в курсах для программистов, когда на учеников вываливают кучу информации и сам язык и библиотеки. Он оканчивает курс у него голова распухла и ему говорят а вот теперь создай приложение сам - и тут он начинает придумывать что-то, потому что на курсе этому учат совсем мало.
Действительно, есть такие моменты. Мы, когда берём стажёра, просим его написать какое-нибудь несложное web-приложение, например, на Django. Это готовый фреймворк, с готовым каркасом и с хорошими обучающими материалами. Даже не надо чего-то придумывать, все было готово ещё лет дцать назад. Нужно только знать куда человека направить.
Это же в будущем избавит от ситуаций, когда для чего-то маленького и ненагруженного тебе будут предлагать развернуть кубернетис с кейклок для авторизации и кракенном в виде API-гейтвея и микросервисами за ним на экзотических языках. Если приложение маленькое и простое, то стандартных возможностей стандартных фреймворков хватает с головой.
Уважаемый Константин Митин, сооснователь и руководитель компании АйТи Мегастар/АйТи Мегагруп, вам в пору примерить шкуру сооснователя и руководителя тесктогенератора МегаВода и МегаНеинформатив. Ну серьезно. Господи. Вы рассказываете в статье об ошибках программистов кто такие программисты? Прошу прощения. Не осилил ваш титанический труд
К слову сказать, в тексте статьи есть определение и для программистов. То, что вы сей труд не осилили, не страшно. Возможно вы просто не входите в мою целевую аудиторию, а я не вхожу в круг интересных для вас авторов. Обычное дело, если честно.
А по большому счёту, меня как-то попросили написать про Job Safety Driven Development (JSDD), а это не простая тема с кучей нюансов. Теперь приходится описывать, что является этим JSDD, а что лишь имеет с ним внешнее сходство. Эта статья лишь треть от того текста, который пришлось написать. И явно придётся писать ещё одну статью о том, почему у людей не получится собрать дрим-тим из суперкрутых программистов, которые решат им все технические и бизнесовые проблемы.
«Почему всё ломается даже у хороших программистов?»У хороших программистов ломается не все. А только кое-что. И кое-где. В некоторых случаях. В сложных системах. При условии, что программист вчера бухнул и забыл проверить кейс. А его коллега в это время тоже бухал, правил тот же фрагмент кода, и смержил криво. А третий коллега тоже принял на грудь и невнимательно смотрел мерж-риквест перед апрувом. Но так бывает очень редко. Потому что хорошие программисты на удаленке практически никогда не бухают синхронно.