Становится ли программирование легче читать, писать и понимать по мере приобретения опыта? [закрыто]

80

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

В настоящее время я написал функциональное программное обеспечение, и я выучил основы 3 языков, и я на среднем уровне только на одном языке. Когда я смотрю на сложные вещи, такие как MYSQL, или программирование на OpenGL, или даже на код Visual C ++, это вызывает у меня головную боль, и даже при визуализации исходного кода HTML на многих веб-сайтах (большинство исходных кодов на веб-сайтах, которые видит Google Chrome, кажутся очень грязными и неорганизованными ) это смущает меня до самого предела моего мозга. Сначала все кажется простым, но когда я смотрю на эти продвинутые вещи, я просто задаюсь вопросом, как можно так многому научиться.

Вкратце, вопрос в том, станут ли эти вещи понятнее программисту по мере его продвижения в карьере. Стали ли сложные темы, как перечисленные выше (OpenGL, MySQL, продвинутые html-сайты), легче читать, писать и понимать по мере того, как вы узнаете больше, или они просто усложняются? Как вы можете бороться с этим чувством, что вы муравей в мире программирования, и эта штука может вас раздавить?

Bugster
источник
24
Я предлагаю вам прочитать это: norvig.com/21-days.html
Джеймс П.
Как и все остальное, да. Пока технология не изменится на вас. :-)
Математическая атака
3
Пока ваш «опыт» не читает одно и то же снова и снова. Растягивайте себя новыми вещами.
JeffO
Небольшой совет: для анализа сложных HTML-страниц вы захотите использовать Firefox Firebug или Chrome Inspect Element.
Ли Райан
6
«Когда я был новичком, я думал, что знаю все о программировании». Будучи там, и чем больше я учусь, тем больше понимаю, как мало я знаю.
Ливен Керсмакерс

Ответы:

134

Краткий ответ: нет.

Длинный ответ:

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

  • Вы не хотите просто писать код. Вы хотите написать красивый код .

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

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

  • Вы не ограничиваете себя небольшим набором библиотек, которые вы знаете. Если вы пишете код на C #, вы хотите знать и использовать все возможности многих библиотек .NET Framework.

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

  • Вы не хотите скромно ограничивать себя базовым набором инструментов, которые дает вам язык . В C # вы хотите использовать дженерики, контракты кода, рефлексию, разработку на основе событий, функциональные аспекты с LINQ, расширения Reactive и массу других вещей, которые вы изучили, и все это в одном проекте, если эти вещи помогут вам лучше писать код.

  • Вы не начинаете писать код . Вы тратите от 80 до 90% своего времени на сбор требований , создание архитектуры вашего приложения, написание модульных тестов, написание документации и т. Д., И только от 10 до 20% своего времени на написание реального кода .

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

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

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

Короче говоря:

  1. В первый день, когда вы начинаете учиться программировать, задача перечисления всех чисел от 1 до 100, делимых на два, очень сложна: вы только что узнали, как создавать циклы и отображать числа на экране, но вы не знаете, как найти число делится на два.

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

  3. ... И вы задаетесь вопросом: "Как я мог это сделать?" точно так же, как вы это сделали десять лет назад, когда вам приходилось отображать числа на экране с циклом.

Когда вам становится легко в домене, это означает, что вы достигли совершенства в этом домене, или вам уже все равно.

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

Арсений Мурзенко
источник
36
Ходить по воде и разрабатывать программное обеспечение по спецификации легко, если оба они заморожены (это показывает, что «Вы не начинаете писать код. Вы тратите месяцы на сбор требований», это немного нереально)
JFS
9
«Функциональное программирование - намного лучшая альтернатива », является спорным.
JFS
15
Я, конечно, надеюсь, что бит «функционального программирования» является лишь примером «использования правильного инструмента для работы», а не подразумевает, что функциональное программирование на самом деле лучше для общего использования.
Бен Брока
7
Также отмечу, что «месячные требования к сборщику» без каких-либо изменений будут происходить только в идеализированной модели водопада. Если вы не повторяете, вы убиваете себя и проект.
Бен Брока
8
«Это никогда не становится легче, ты просто идешь быстрее». / Грег ЛеМонд /
daGrevis
20

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

То же самое касается компьютерного программирования. В какой-то момент сам язык перестает ощущаться как иностранный, но на этом языке еще много написано, чего вы еще не знаете. Но все доступно для вас с некоторыми усилиями.

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

Карл Билефельдт
источник
18

Здесь уже есть несколько действительно хороших ответов, но я подумал, что могу добавить еще пару коротких моментов:

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

Это называется эффектом Даннинга-Крюгера . Это чрезвычайно распространено среди начинающих программистов, и фактически, новичков во многих областях.

Большинство исходных кодов на сайтах, видимых в Google Chrome, выглядят очень грязными и неорганизованными

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

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

По специализации . Я эксперт в чрезвычайно узкой области: разработка и реализация семантических анализаторов компилятора C #. Если бы я потратил пятнадцать лет на изучение OpenGL, XML, HTML или чего-то еще, я был бы экспертом в этом и был бы озадачен семантическими анализаторами. Но я этого не сделал, и поэтому у меня есть только очень базовое понимание OpenGL, XML и HTML.

Вкратце, вопрос в том, станут ли эти вещи понятнее программисту по мере его продвижения в карьере.

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

Когда вы приобрели больше опыта и увидели множество различных методов программирования, вы понимаете, что, казалось бы, не связанные технологии - скажем, OpenGL и LINQ в C # - имеют общие черты. Оба являются API-интерфейсами, в которых вы создаете рабочие процессы, которые передают данные, и в которых вы можете выполнять оптимизаторы и другие преобразования в рабочем процессе разнообразными и интересными способами. Как только у вас есть эта концепция в вашем наборе инструментов, внезапно становится намного проще задействовать всю мощь любого API, использующего этот шаблон.

Стали ли сложные темы, как перечисленные выше (OpenGL, MySQL, продвинутые html-сайты), легче читать, писать и понимать по мере того, как вы узнаете больше, или они просто усложняются?

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

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

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

Эрик Липперт
источник
2
Большое спасибо за этот ответ, он выше остальных, потому что он не только отвечает на мой главный вопрос, но и открывает мне глаза на некоторые вещи. +1
Bugster
@Eric: Что бы вы сказали человеку в такого рода темах, где он говорит, что «специализация для насекомых, а не людей»?
Джоан Венге
@JoanVenge Кто-нибудь скажет это? Обычно люди все о специализации и уникальности, и гораздо больше, если они чувствуют необходимость отличить себя от животных (или насекомых).
Мэтью Читал
1
Вы неправильно понимаете, что такое эффект Даннинг-Крюгера, который он определяет как неспособность неквалифицированных людей распознавать свою собственную неспособность и точно оценивать свои собственные способности . Если вы не можете узнать, вы не знаете всего, вы никогда не сможете узнать что-то новое. Если вы можете распознать это, это не DKE.
+1 для Выберите понравившуюся вам часть, где вы можете добавить реальную ценность и стать экспертом в этом.
Акшай Хот
14

Краткий ответ, да.

Со временем и выдержкой эти вещи легче понять.

Помните, что когда вы просматриваете сайты с помощью инструментов dev в вашем браузере, они часто создаются фреймворком. Пусть это будет любое количество вещей ... ASP.NET, JSP, RoR, Django, ... кто знает. Некоторые из этих структур производят более чистый код, чем другие.

В заключение ... воздействие приводит к мастерству. Нет способа уничтожить это чувство. Просто опыт и обучение. Требуется время, чтобы перейти, получить знания в предметной области и освоить навыки, используемые в вашей среде.

установка
источник
1
В этом есть доля правды, если человек, который написал код, использовал передовой опыт и обычные идиомы как языка в частности, так и программистов в целом. Плохое кодирование и / или преднамеренное запутывание могут замедлить процесс сканирования. Попробуйте зайти на CodeGolf.SE . Даже «в чистом виде» версии могут быть непростыми, потому что хорошие практики были принесены в жертву при изменении метрики конкурса.
dmckee
@dmckee Даже плохой код становится намного легче читать с опытом. Я заметил это, в частности, в C ++ (и мне пришлось читать много плохого кода). Конечно, это серьезное препятствие, но, тем не менее, оно становится намного легче, если вы начнете обнаруживать шаблоны плохого дизайна и типичных ошибок. Они также образуют своего рода идиому, которую вы выучите.
Конрад Рудольф
2

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

Однако один пример, который вы привели, рассматривал кучу HTML-кода:

Почему вы смотрите на HTML-код? Вероятно, не потому, что вы хотите изучить HTML весь сайт. Вероятно, есть определенный трюк, который вы надеетесь поднять. В этом случае просто найдите соответствующий HTML с помощью такого инструмента, как firebug.

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

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

Метрическая система
источник
2

Краткий ответ - ДА, но многое зависит от того, как вы определяете опыт.

Я думаю, что есть как минимум 3 части для разработки. Когда вы становитесь лучше в каждом сегменте, некоторые вещи становятся яснее.

  1. Понимание требований бизнеса . Это дает вам лучший вид приложения с высоты птичьего полета. Чем лучше вы поймете, почему бизнес-правила такие, какие они есть, тем быстрее вы поймете, почему определенные вещи выполняются определенным образом. Например, ваши клиенты должны соблюдать государственное постановление X, поэтому им нужно подготовить документ Y, поэтому им нужна эта, казалось бы, бесполезная информация.

  2. Понимание ТЕХНИЧЕСКИХ требований . Это похоже на # 1, за исключением того, что нужно больше понимать, почему на техническом уровне. У некоторых инструментов и технологий есть свои причуды, пока вы не разберетесь с ними, пока трудно понять, почему все делается определенным образом. Это становится более очевидным, когда вы имеете дело с устаревшими системами. Например, приложение использует определенную служебную шину, которая принимает только XML.

  3. Понимание требований ЯЗЫКА . Как уже упоминали другие, чем опытнее вы владеете языком, тем быстрее вы сможете прочитать, чего пытался достичь оригинальный кодер. Но без № 1 и № 2 вы обнаружите, что эта увеличенная способность достигает пика довольно быстро.

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

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

Permas
источник
2

Это становится проще и сложнее одновременно!

Знание других - это мудрость;
Знание себя - это просветление.
Овладение другими требует силы;
Овладение собой требует силы;
Тот, кто знает, что у него достаточно, богат.
Упорство является признаком силы воли.
Тот, кто остается там, где он есть, терпит.
Умереть, но не погибнуть - значит быть в вечности.

переведено на разработку программного обеспечения

Знание множества технологий - это мудрость. (Все происходит от Алгола)
Знание того, чего вы не знаете, является просветлением. (LISP)
Освоение множества языков, фреймворков и платформ требует больших усилий. (Java)
Овладение только тем, что вам нужно знать, и только тем, что требует силы. (и Google, или stackoverflow.com)
Знание того, когда следует прекратить кодирование и доставку чего-либо, - это когда вы знаете достаточно хорошо (Никакого паралича анализа или позолоты)
Продолжайте работать над тем, чего вы пытаетесь достичь, это требует сосредоточенности и силы воли. (Все постоянно меняется, вы никогда не закончите)
Придерживайтесь одной или двух технологий, и вы будете терпеть. (Кобол все еще хорошо платит, как и С)
Выйти из программирования и перейти в управление - значит быть вечным. (или оставьте унаследованное программное обеспечение FOSS, которое все будут продолжать хорошо использовать после вашей смерти).


источник
Так что вместо того, чтобы быть муравьем, вы должны быть тараканом и просто вставать, когда вас раздавливает, я прав? :-P
Bugster
«Паралич анализа»! = «Знать, когда прекратить кодирование». Это больше «знать, когда начать кодирование».
Бен Фойгт
0

Вкратце, вопрос в том, станут ли эти вещи понятнее программисту по мере его продвижения в карьере. Стали ли сложные темы, как перечисленные выше (OpenGL, MySQL, продвинутые html-сайты), легче читать, писать и понимать по мере того, как вы узнаете больше, или они просто усложняются? Как вы можете бороться с этим чувством, что вы муравей в мире программирования, и эта штука может вас раздавить?

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

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

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


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

Например, все три языка, которые вы упомянули (MYSQL, OpenGL, C ++), имеют некоторые общие особенности:

  • Можно вычислить отдельные части алгоритма по отдельности, а затем объединить их в полное решение.
  • Компьютер обычно требует некоторой общей подготовки, прежде чем вы сможете приступить к работе над конкретной проблемой (создание таблицы, инициализация холста или загрузка общих библиотек)
  • Более ранние операторы имеют приоритет и влияют на более поздние операторы, т. Е. Компьютер запускается в верхней части кода и работает вниз

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

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

Handyman5
источник
0

Краткий ответ: да , в общем

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

По мере движения во времени вы приобретаете опыт.

По мере продвижения во времени другие языки / шаблоны и т. Д. Развиваются параллельно с вашим развитием.

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

Хороший вопрос также может быть: вы слишком толстый или слишком толстый на определенном языке.

EhevuTov
источник
0

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

Все эти варианты имеют два аспекта сложности.

  1. Их словарный запас и синтаксис разные.
  2. Абстракции (концепции высокого уровня), которые они поддерживают, отличаются.

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

Затем переключитесь на «простые вещи», такие как CSS, HTML, Javascript и, возможно, также на фреймворки, такие как Bootstrap и React, и ваш мозг заработает, как у Альберта Эйнштейна. Люди думают: «Я знаю французский, поэтому учить немецкий язык должно быть легко». Нет!

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

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

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

bcperth
источник
-1

Стали ли сложные темы, как перечисленные выше (OpenGL, MySQL, продвинутые html-сайты), легче читать, писать и понимать по мере того, как вы узнаете больше, или они просто усложняются? Как вы можете бороться с этим чувством, что вы муравей в мире программирования, и эта штука может вас раздавить?

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

Есть история о мастере дзен и переполненной чашке .

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

Помните: если вы чувствуете себя подавленным новой концепцией, вам нужно искать многих учителей.

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

Ваше отношение имеет все значение.

mrwes
источник