Comments 64
Насколько становиться профессионалом и в какую сторону развиваться каждый решает для себя сам. Советую вам поискать «матрицу компетентности программиста» — вы тогда поймёте, на каком уровне застряли. И тогда уже решите, надо ли вам двигаться дальше.
Лично я с детства страдаю любознательностью и не собираюсь останавливаться на том, что знаю на данный момент.
Вот лично я именно переводу и поставил минус. Потому что он очень некачественный. Ну и как уже написали ниже, есть официальная русская версия, ссылка на которую находится в самом начале оригинальной статьи. Т.е. смысл поста не совсем понятен (и по-моему на хабре вообще не приветствуются переводы в песочнице, во всяком случае, раньше так было).
Перевод — отвратительный, пример:
Я свободен только на C # и JavaScript — и уже подзабыл C#.
Я вот не знаю кто такой Дэн Абрамов и почему то, что он не знает так важно для нас. А ещё почему люди думают, что он много знает. И почему люди вообще о нем думают.
Обычно те одинесники которые начинают понимать значение этих всех слов, очень быстро уходят из 1с
Могу точно сказать что обычному программеру надо существенно меньше знать и иметь меньшую квалификацию чтобы получать денег больше одинесника. я уж молчу об особенностях работы не на фикси (разъезды)
Я вот честно не знаю, как придумать и сделать себе пассивный источник дохода в интернете, который приносил бы мне приличный стабильный доход и позволил бы заниматься тем что мне нравится и жить там где нравится. Вот это главное чего я не знаю. А все остальное…
Современный стек веб технологий это вообще бурлящая хрень, в которой технологии появляются быстрее чем их в принципе можно изучать. Поэтому не проще ли ориентироваться на результат а не на технологии? Нечто подобное было с десктопом когда-то, когда все кричали «COM», «ActiveX», еще какие-то слова, и где оно теперь? Смешалось до уровня неотличимости от прочих низкоуровневых API. Думаю, то же и с вебом будет.
Хорошо что вы знаете что именно вы не знаете:)
«Мы не знаем того, чего мы не знаем.» А. Курпатов.
Просто он пишет на JS под браузер. А там нет сокетов, шелла, пайпов, доступа к настройкам TCP/IP, malloc, настройки SSL…
Почему в Windows вызов select(0, &readfds, NULL, NULL, &tv); работает (и именно так и вызывается, с нулём в первом параметре), а в Unix нет? :)
Есть много вещей, которых я не знаю Я знаю о своих пробелах в знаниях (по крайней мере, части из них). Я могу заполнить их позже, если мне станет интересно или они понадобятся для проекта.
Это никак не принижает мои знания и опыт. Есть много вещей, которые я могу сделать хорошо. Например, изучать технологии, когда я в них нуждаюсь.
Вот на самом интересном месте… (( Тут есть пространство для отдельной статьи, о том, как нужно изучать технологии. (Особенно если ты не знаешь (список), но понимаешь где у тебя пробелы.
Не знаю правильный ли я код пишу и правильно ли использую объектное программирование. Потому что никогда никому нет до этого дела — руководство хочет, чтобы все работало и уже вчера и как только начинает работать, дают следующую кучу задач. Потом мой код достается людям, которые его сопровождают и не берутся меня судить или судят, но я об этом не узнаю.
Не знаю ничего про алгоритмы, даже про пузырьки. Когда нужен какой-нибудь алгоритм поиска и оптимизации того не знаю чего с 20 критериями просто импровизирую. Не уверен эффективно ли это в итоге, или можно было сделать лучше, если знать больше.
Не знаю тонкостей и нюансов ниодной технологии из всех с которыми работал. Каждый раз откладываю изучение и просто использую базовые возможности для которых очевидно как они работают.
Когда проектирую приложения, иногда до меня доходит фидбэк, что все плохо и пользователи ничего не могут понять, иногда что пользователи довольны. У меня есть ощущение, что я каждый раз горожу излишне сложные системы, но я не знаю наверняка так ли это и каждый раз нет времени и возможности разобраться.
Не знаю в итоге, программист ли я, или мне достаются проекты просто потому что я за них берусь и потом достаются следующие, потому что все знают что я занимался предыдущими с переменным успехом.
Расскажите кто еще чего-то не знает и ощущает себя «самозванцем».
— знание всего того, чего не знает Дэн, не делает вас Дэном Абрамовым
Выводы…
А может просто оптимальность работы не была важным критерием при выборе?
Допустим это возможно, если под программировнием понимать верстку формочек на модном js фрейме, или настройку тем для Wordpress.
Да только вот все сильные программисты ИНЖЕНЕРЫ волей не волей знают большинство из того что тут перечисленно. И дело тут не в задротстве теории, просто чем больше опыт и чем больше твоя заинтересованность проектом, тем чаще тебе приходится вылазить из своей зоны ответственности и сталкиваться с проблемами, которые весьма косвенно относятся к твоей основной специальности.
В общем, если верх ваших амбиций — это тупо делать задачи из бэклога, списывая время потраченное на кофебрейки и настольный тенис, то ок. А если хотите серьезного развития(как профессионального, так и технического) то рано иили поздно вам придется унать чем отличаетя виртуализация от контейниризации и чем TCP/IP отличается от OSI.
Ну автор, грубо говоря, автор одного из модных js-фреймворков. Настолько модного, что некоторые считают его неотъемлемой частью другого.
Соглашусь с тем, что программисты должны знать OSI модель (если работают в каком-то виде с сетями), но для чего frontend разработчику знать в чем отличие виртуализации от контейниризации?
Учиться приходится всегда, но объем знаний на столько большой, что всегда найдется человек, который скажет вам "как это вы это не знаете, это же банальные вещи".
Вещи описанные Деном я на каком-то уровне знаю, но только по причине того, что раньше занимался десктопным программированием а позже фуллстеком. Но во frontend разработке, например работа с потоками уже не нужна (работа с web-worker'ами это не то).
Некоторая малая часть людей
Можно вполне заменить на «немногие люди». И таких примеров много по статье.
Т.е основная задача при переводе должна быть именно передать мысли автора, а не перевести каждое слово.
На самом деле, скорость изменения технологий в ИТ реально обескураживает. Пока я пишу этот комментарий, наверняка в мире появилась еще одна новая библиотека. Те платформы и технологии, которые я использовал лет 10 назад (Windows Mobile, MFC, WTL) сейчас не нужны никому от слова «совсем», еще лет через 10 наверняка случится то же самое с тем, что я использую сейчас.
Я не считаю себя самым плохим программистом :) но даже заходя на хабр, обнаруживаю кучу новых слов в заголовках статей, про которые вообще ничего не знаю, и совершенно нет времени узнавать.
Хотя в узкой специализации нет ничего плохого… пока не начинаешь искать новую работу, и не обнаруживаешь, что ближайшая вакансия по твоей специализации территориально в 200км :)
Ну, не нужно мне уметь хорошо варить металл — зачем лезть в это?
Зато я умею хорошо считать сметы строительные.
Разделение труда
Вещи, которых я не знаю в 2018