Сосредоточение на одном языке программирования
От: velkin Удмуртия http://blogs.rsdn.org/effective/
Дата: 10.03.21 14:21
Оценка:
Часто люди спрашивают в интернете, стоит ли учить такой-то язык программирования. И вот у меня возникла мысль.

1) С одной стороны знать много языков программирования вроде как хорошо, широкий кругозор.
2) С другой это лишь отнимает силы от того, чтобы выучить хотя бы один язык, но профессионально.

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

https://rsdn.org/poll/7808
Автор: velkin
Дата: 10.03.21
Вопрос: Что лучше, знать один язык программирования профессионально или несколько на среднем уровне?
Re: Сосредоточение на одном языке программирования
От: gyraboo  
Дата: 10.03.21 14:24
Оценка: +12
Здравствуйте, velkin, Вы писали:

V>Часто люди спрашивают в интернете, стоит ли учить такой-то язык программирования. И вот у меня возникла мысль.


V>1) С одной стороны знать много языков программирования вроде как хорошо, широкий кругозор.

V>2) С другой это лишь отнимает силы от того, чтобы выучить хотя бы один язык, но профессионально.

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


V>https://rsdn.org/poll/7808
Автор: velkin
Дата: 10.03.21
Вопрос: Что лучше, знать один язык программирования профессионально или несколько на среднем уровне?


А где вариант "Один профессионально и несколько на среднем уровне"?
Re[2]: Сосредоточение на одном языке программирования
От: velkin Удмуртия http://blogs.rsdn.org/effective/
Дата: 10.03.21 14:28
Оценка:
Здравствуйте, gyraboo, Вы писали:

G>А где вариант "Один профессионально и несколько на среднем уровне"?


Вопрос специально поставлен так, чтобы не казалось, что можно выучить больше за тоже самое время, например:
1) Один профессионально и несколько на среднем уровне.
2) Несколько профессионально и ни одного на среднем уровне.
3) Несколько профессионально и несколько на среднем уровне.

А под изучением языка программирования понимается не только синтаксис, но и свои наработки в виде алгоритмов или библиотек алгоритмов, умение сразу же использовать данный язык для решения задач.
Re: Сосредоточение на одном языке программирования
От: klopodav  
Дата: 10.03.21 14:34
Оценка: 1 (1) +2
V>Так стоит ли распыляться. Слова про то, что надо мыслить вне языковых конструкций разбиваются, когда начинаешь писать программу. Да, можно частично абстрагироваться, но вот код всегда предельно конкретен.

Где-то я читал про такую концепцию, которая на западе называется "T-people" (такое название — по аналогии с перевернутой буквой T). Это когда у человека какой-то определенный скилл прокачан на хорошем уровне, но также есть и некоторые скиллы в смежных областях. Так вот, утверждается, что именно такие работники особо ценны, и я с этим утверждением полностью согласен.

Это применимо также и в программировании. Какой-то язык надо знать хорошо (не обязательно быть совсем уж суперпрофи в нем, но хороший уровень поддерживать надо). А какие-то другие языки можно знать на более поверхностном уровне.

Кстати, для того чтобы знать что-то из других языков — не обязательно их спецом изучать. Просто часто бывает так, что по работе столкнешься с какой-то новой незнакомой технологией — и тогда не надо сразу заявлять "мы таким делам вовсе не обучены", а можно попытаться хоть немного разобраться в ней. Возможно, возникшая задача окажется простой и некритичной, и поверхностных знаний для ее решения будет достаточно, зато появится дополнительный полезный опыт.
Re[3]: Сосредоточение на одном языке программирования
От: SergeyIT Россия  
Дата: 10.03.21 14:38
Оценка:
Здравствуйте, velkin, Вы писали:

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


Все зависит от задач. А язык — это просто инструмент.
Определи круг задач для опроса.
Извините, я все еще учусь
Re[3]: Сосредоточение на одном языке программирования
От: gyraboo  
Дата: 10.03.21 14:40
Оценка: +2
Здравствуйте, velkin, Вы писали:

G>>А где вариант "Один профессионально и несколько на среднем уровне"?


V>Вопрос специально поставлен так, чтобы не казалось, что можно выучить больше за тоже самое время, например:

V>1) Один профессионально и несколько на среднем уровне.
V>2) Несколько профессионально и ни одного на среднем уровне.
V>3) Несколько профессионально и несколько на среднем уровне.

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


Но ведь на практике требуется знание нескольких языков, один хорошо (типа твоя специализация) и несколько дополнительно. Например, у меня основная специализация — Java. Но по работе на разных местах и в разных компаниях мне приходилось дополнительно работать на C++, Питоне, HTML/CSS/JavaScript/TypeScript, Xslt/XPath, Delphi, C#, Visual Basic, Linux Bash, Perl, а про SQL я уже молчу, это вообще считается основой компьютерной грамотности. Поэтому сосредоточение на одном языке — это считаю в общем случае неправильным.
Re: Сосредоточение на одном языке программирования
От: Homunculus Россия  
Дата: 10.03.21 14:42
Оценка: +5
Здравствуйте, velkin, Вы писали:

Какой отверткой лучше уметь пользоваться — плоской или крестообразной?
А чем лучше — молотком или плоскогубцами?

Вопрос странный. Задачи надо уметь решать из своей области, а не молотками уметь жонглировать
Re[2]: Сосредоточение на одном языке программирования
От: velkin Удмуртия http://blogs.rsdn.org/effective/
Дата: 10.03.21 14:44
Оценка:
Здравствуйте, klopodav, Вы писали:

K>Кстати, для того чтобы знать что-то из других языков — не обязательно их спецом изучать. Просто часто бывает так, что по работе столкнешься с какой-то новой незнакомой технологией — и тогда не надо сразу заявлять "мы таким делам вовсе не обучены", а можно попытаться хоть немного разобраться в ней. Возможно, возникшая задача окажется простой и некритичной, и поверхностных знаний для ее решения будет достаточно, зато появится дополнительный полезный опыт.


Я не знаю как компании оценивают уровень владения языками программирования и совпадает ли это с моей оценкой.
1) Джун (новичок)
2) Мидл (средний)
3) Сеньор (профи)

В каком-то роде я задал вопрос, что лучше, быть мидлом в нескольких языках, или сеньором в одном. Джунов здесь как бы вообще нет даже если их знания в каких-то задачах вполне хватит. Понятно, что профи в каком-нибудь императивном языке легко достигнет уровня новичка в другом императивном языке. Но чем дальше в лес, тем толще партизаны, стать средним, а тем более профи гораздо сложнее. Особенно это касается, если учитывать время на продвижение, а не считать, что его бесконечно много.
Re[4]: Сосредоточение на одном языке программирования
От: velkin Удмуртия http://blogs.rsdn.org/effective/
Дата: 10.03.21 14:51
Оценка:
Здравствуйте, SergeyIT, Вы писали:

SIT>Все зависит от задач. А язык — это просто инструмент.

SIT>Определи круг задач для опроса.

Нет, нет, нет, всё не так просто. Для примера предположим человек выбрал C++, он знает все парадигмы этого языка. Ему можно заказывать всё что угодно, но именно в ограниченном круге задач. Если нужен хотя бы скриптовый язык, вроде Lua, Python, то предполагается, что он не может их использовать эффективно. Или, например, кто-то выбрал PHP, он может что угодно на нём сделать, никакая веб-программа на этом языке не является для него секретом. Но при этом никаких Ruby или ещё чего-то похожего, это не говоря уже про отдалённое.

Я как бы поставил умозрительное условие:
1) Или программист ограничен во всём, кроме одного языка программирования, но на нём он творит чудеса.
2) Или он этакий мастер на все руки, но идеального исполнения от него ждать не стоит.
Re[5]: Сосредоточение на одном языке программирования
От: SergeyIT Россия  
Дата: 10.03.21 20:19
Оценка:
Здравствуйте, velkin, Вы писали:

V>Я как бы поставил умозрительное условие:

V>1) Или программист ограничен во всём, кроме одного языка программирования, но на нём он творит чудеса.
V>2) Или он этакий мастер на все руки, но идеального исполнения от него ждать не стоит.

Так и к чему относится твоё умозрение? Только не к реальной жизни...
Извините, я все еще учусь
Re[3]: Сосредоточение на одном языке программирования
От: T4r4sB Россия  
Дата: 10.03.21 20:27
Оценка:
Здравствуйте, velkin, Вы писали:

V>Вопрос специально поставлен так, чтобы не казалось, что можно выучить больше за тоже самое время, например:


Если один язык выучишь нормально, то дальше императивную логику, не требующую знания фишек языка, можешь спокойно писать на любом.
Re[4]: Сосредоточение на одном языке программирования
От: gyraboo  
Дата: 10.03.21 20:35
Оценка:
Здравствуйте, T4r4sB, Вы писали:

V>>Вопрос специально поставлен так, чтобы не казалось, что можно выучить больше за тоже самое время, например:


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


Императивщины мало знать, сейчас везде прёт функциональщина, асинхронщина, реактивщина, неблокировщина.
Re: Сосредоточение на одном языке программирования
От: Pzz Россия https://github.com/alexpevzner
Дата: 11.03.21 06:18
Оценка: +2
Здравствуйте, velkin, Вы писали:

V>Часто люди спрашивают в интернете, стоит ли учить такой-то язык программирования. И вот у меня возникла мысль.


V>1) С одной стороны знать много языков программирования вроде как хорошо, широкий кругозор.

V>2) С другой это лишь отнимает силы от того, чтобы выучить хотя бы один язык, но профессионально.

Человеку вполне посильно выучить несколько языков на профессиональном уровне.
Re[2]: Сосредоточение на одном языке программирования
От: Pzz Россия https://github.com/alexpevzner
Дата: 11.03.21 06:25
Оценка:
Здравствуйте, Homunculus, Вы писали:

H>Какой отверткой лучше уметь пользоваться — плоской или крестообразной?


Соответствующей болту. Причем что касается крестообразных, желательно еще уметь не только различать размеры шлицов, но и отличать Phillips от Pozidriv, и выбирать правильную отвертку в зависимости от болта, а то все шлицы срежешь.
Re[3]: Сосредоточение на одном языке программирования
От: Homunculus Россия  
Дата: 11.03.21 06:33
Оценка:
Здравствуйте, Pzz, Вы писали:

Спасибо, Кэп, что развернули детально мой ответ. Но я предпочитаю отвечать так, чтоб у читающего мой ответ было пространство на «подумать». Тогда ответ больше запоминается, так как читающему его кажется, что это он додумался.
Re[4]: Сосредоточение на одном языке программирования
От: velkin Удмуртия http://blogs.rsdn.org/effective/
Дата: 11.03.21 06:36
Оценка:
Здравствуйте, T4r4sB, Вы писали:

V>>Вопрос специально поставлен так, чтобы не казалось, что можно выучить больше за тоже самое время, например:

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

Логично, что достигнув профессионализма в одном языке можно приступить к другому, но это всё будет после, а мой вопрос предполагает ситуацию до этого.
Re[2]: Сосредоточение на одном языке программирования
От: velkin Удмуртия http://blogs.rsdn.org/effective/
Дата: 11.03.21 06:54
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>Человеку вполне посильно выучить несколько языков на профессиональном уровне.


Можно, но если программист средний в каком-либо одном языке, то он может или выучить ещё один язык до среднего уровня, или повысить текущий до профи. На то и другое будет потрачено время, да и не факт, что запала хватит на всё. В мире более 8 тысяч языков программирования. Говорят, что фраза про 10 тыс. часов это профанация. Ну, а всё же, если посвятить улучшению 4 часа в сутки, тогда это 2.5 тыс. суток. Если заниматься каждый день, то это ≈6.85 лет. А если не каждый, а если меньше 4 часов. В топике всего лишь вопрос, кто что думает по этому поводу.
Re[2]: Сосредоточение на одном языке программирования
От: pagid Россия  
Дата: 11.03.21 06:57
Оценка: +3
Здравствуйте, Pzz, Вы писали:

Pzz>Человеку вполне посильно выучить несколько языков на профессиональном уровне.

Выучить на какой-то момент может и удастся, но все равно основным будет один (край два), а остальные будут использоваться эпизодически или совсем не будут и через некоторое время знания вернуться к поверхностному уровню. Это время не недели конечно и не месяцы наверно, а годы, но жизнь в том числе профессиональная их них складывается.
Отредактировано 14.03.2021 6:42 pagid . Предыдущая версия .
Re[3]: Сосредоточение на одном языке программирования
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 11.03.21 08:50
Оценка:
Здравствуйте, velkin, Вы писали:

V>Здравствуйте, gyraboo, Вы писали:


G>>А где вариант "Один профессионально и несколько на среднем уровне"?


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

На самом деле без знания нескольких языков, просто невозможно программировать профессионально на одном.
Тот же C# развивается в разных направления. Linq аналог SQL, функциональщина ближе к F#
dynamic ближе к JS итд. Те же алгоритмы будут по разному использоваться
и солнце б утром не вставало, когда бы не было меня
Re[3]: Сосредоточение на одном языке программирования
От: Pzz Россия https://github.com/alexpevzner
Дата: 11.03.21 09:14
Оценка:
Здравствуйте, velkin, Вы писали:

Pzz>>Человеку вполне посильно выучить несколько языков на профессиональном уровне.


V>Можно, но если программист средний в каком-либо одном языке, то он может или выучить ещё один язык до среднего уровня, или повысить текущий до профи. На то и другое будет потрачено время, да и не факт, что запала хватит на всё. В мире более 8 тысяч языков программирования. Говорят, что фраза про 10 тыс. часов это профанация. Ну, а всё же, если посвятить улучшению 4 часа в сутки, тогда это 2.5 тыс. суток. Если заниматься каждый день, то это ≈6.85 лет. А если не каждый, а если меньше 4 часов. В топике всего лишь вопрос, кто что думает по этому поводу.


Что ты называешь профессиональным владением языком?

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

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

Из 8000 языков, которые есть в мире, полезных и практически используемых и десятка не наберется. Остальные 9990 учить не обязательно.

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