Когда вы можете называть себя хорошим языком X?


30

Это восходит к разговору, который у меня был с моей девушкой. Я пытался сказать ей, что я просто недостаточно чувствую себя в своем языке программирования (C ++), чтобы называть себя хорошим. Затем она спросила меня: «Ну, когда вы считаете себя достаточно хорошим?»

Это интересный вопрос. Я не знал, что ей сказать. Так что я тебя спрашиваю.

Для любого языка программирования, фреймворка или тому подобного, когда вы достигаете точки, когда сидите, смотрите на то, что вы сделали, и говорите: «Эй, я на самом деле довольно хорош в этом».? Как вы определяете «хорошо», чтобы вы могли честно сказать другим: «Да, я хорош в Х».

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

Дополнительная информация

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

Я также читал различные статьи из Coding Horror об интервью с людьми. Было сказано, что некоторые люди не могут функционировать вне рамок. Таким образом, они могут быть «хорошими» для этой структуры, но не иначе как в языке. Это правда?


2
Насколько я знаю, целое правило 10 000 часов происходит из книги «Выбросы»?
Жак Преториус

7
Правило 10 000 часов было исследовано / поддержано в основном в работе К. Андерса Эрикссона, пионера в относительно новой дисциплине психологии «изучение человеческих качеств». В частности, его статья 1993 года «Роль преднамеренной практики в достижении экспертных результатов» является ориентиром в этой области. См. Статью Google Scholar здесь: scholar.google.com/…
limist

Ответы:


41

Вы не можете называть себя хорошим в X. Только другие люди могут.


17
Хотя то, что другие говорят, что ты хорош в X, еще не гарантирует, что ты хорош - просто ты лучше их. (Если, конечно, эти другие люди не доказали достоверность в отношении X.)
Питер Боутон

Я не согласен, поэтому я -1. Просто потому, что я не согласен и думаю, что голосование против слишком велико.

3
Я боюсь, что это на самом деле не решает проблему: точная самооценка необходима для нашей области, и это не предлагает помощь в этом отношении.
cwallenpoole

@cwallenpoole: Не забывайте эффект Даннинга-Крюгера . Кроме того, вас больше не впечатляет, когда многие люди говорят: «X действительно хорош в Y», а не когда X заявляет, что он компетентен?
Джонатан Мерлет

38

На это уже есть несколько хороших ответов, так что я просто добавлю это:

альтернативный текст


15
Я не уверен, что на самом деле безопасно заменить прежнее я, не так ли? ... может быть, я должен спросить на timetravel.stackexchange.com
Джон Макинтайр

9
@John MacIntyre - из-за этой ссылки стандартное сообщение об ошибке «Не найдено» выглядит пророческим: «Сайт вопросов и ответов timetravel.stackexchange.com не существует ... пока».
Николь

3
Разве убийство прошлого не заставит вас исчезнуть, потому что вы из будущего?
Теренс Понсе

3
Замена вашего старого «Я» новым приведет к неопределенному поведению . ;-)
П Швед

2
Я бы просто остановился на 14611-й день, выпил зелье, изменяющее возраст, и не стал бы испытывать трудности, связанные с путешествием во времени и рискуя исчезнуть.
Chiurox

10

Человек хорош в чем-то только тогда, когда он может уверенно и правильно сказать, что может это сделать.

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

Это обеспечивает отличие от того , чтобы быть дерзким , что означает, что вы можете уверенно сказать, что вы можете сделать что-то без достаточного оправдания; и опытный , который будет означать, что вы можете сделать что-то, потому что вы сделали это в прошлом.


6

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

Ваши сверстники должны решить, хорошо ли вы в чем-то (или ремесленник); Я уверен, что Эйнштейн и Фейнман не бродили рано в своей карьере, говоря: «Посмотри на меня, я гений!» Точно так же ваши сверстники должны решить, хороши вы или нет.

Stackoverflow - это полезный инструмент для определения вашей компетентности. Выберите несколько вопросов в вашей области предполагаемой экспертизы. Ответьте на них (или, если на них уже ответили, ответьте им в своей голове, не заглядывая в опубликованные ответы). Ты думал о лучшем ответе? Вы что-нибудь пропустили? Вы были просто неправы?


В любом случае, на мой взгляд, программисты будут писать ассемблеры, компиляторы, компоновщики и загрузчики.
Крис

3

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

Я считаю, что это связано с вашим уровнем доверия. Если вы ЧУВСТВУЕТЕ, что вы в чем-то хороши, тогда вы сможете сказать это. В какой-то момент вы завершите проект, который подтолкнул вас, и это чувство изменится с «еще нет» на «я есть».


2

Я знаю, что это довольно сложный вопрос. Я изучал два предмета, где я в основном программировал на C ++, и получил высокие оценки в обоих. Я не считаю себя хорошим в C ++. Фактически, если бы я подал заявку на работу, я бы оставил это в своем резюме и просто написал бы C вместо этого. Весь язык просто не мое


2

Я думаю, что вы можете назвать себя хорошим в чем-то, когда вы развиваете необходимые знания, чтобы иметь возможность смотреть на себя как на точку зрения другого человека, а затем определить, насколько вы хороши. Другими словами, вы должны иметь сильные «мета» навыки.

Например, я писатель-любитель, и, глядя на собственное письмо, я могу сказать:

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

и т. д. и т. д. Из-за этого я чувствую, что у меня есть право решать, хорошо я пишу или нет. То же относится и к X.


1

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


1

Вы можете утверждать, что вы «хороши» в чем-то, как только вы делаете это достаточно долго, что вы давно забыли, как делать что-то еще.



1

Каждый раз, когда я думал, что у меня хорошо получается программировать на определенном языке, через шесть месяцев я был убежден, что в то время мне это не нравилось, а теперь я хорош в этом. Так что, я думаю, это относительный термин. Возможно, было бы лучше назвать себя «достаточно хорошим, чтобы сделать Y», где Y - это конкретный проект на этом языке.


1

Когда вы можете посмотреть на исходный код чего-то вроде boost (на c ++. Или аналога boost на другом языке) и НЕ БУДЬТЕ этого бояться .


1

Когда вы начинаете представлять, как программное обеспечение, которое вы ищете, было написано на этом языке.


1

Вы знаете, что у вас это хорошо получается, когда вам нравится то, что вы делаете (и это не просто тривиальная задача) .

Вы знаете, что плохо (пока), когда вы постоянно ругаетесь, пока пишете код.


2
Я искушаю -1 этот. Я работал с системами, которые были так плохо составлены, что их почти можно было бы считать недетерминированными. Вы когда-нибудь пытались создать пользовательский интерфейс на недетерминированном языке? Это вдохновляет проклятие.
cwallenpoole

@ Кристофер хорошо, я провожу большую часть своего времени, ругая новые вещи, но постепенно я привыкаю к ​​этому или пишу что-то, чтобы выручить меня. Если вы ненавидите то, что делаете, возможно, вы можете написать свой выход и почувствовать себя самым умным парнем в здании, а? :)
Камило Мартин

0

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


0

Не уверен насчет «хорошего», но я говорю, что «знаю» язык, когда не мое знание языка, а скорее мое понимание проблемы (или проблемной области), которая мешает мне реализовать часть программного обеспечения для решения этой проблемы проблема.


0

Я думаю, что статья, которую вы искали - «Научите себя программировать за 10 лет» Питера Норвига, - о том, что для достижения каких-то успехов требуется около 10 000 часов. Кроме того, я видел, как он всплывал в других местах, таких как «Элемент» Кена Робинсона, и в блоге лайфхакера, рассказывающем об уменьшении количества ваших увлечений.


0

Я собираюсь принять участие в этом вопросе, чтобы спросить: «Каковы некоторые критерии для оценки моей компетенции в языке программирования»?

Я нашел эту матрицу довольно полезной в этом отношении. Большинство пунктов на самом деле больше о том, чтобы быть компетентным программистом в целом, но как только вы перейдете к заголовкам «Программирование», «Опыт» или «Знания», вы увидите некоторые, которые зависят от используемого языка.

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.