Pascal - точно нет. Сам язык считается очень хорошим для обучения, но увы, уже лет 20 как мёртв. Базовые концепции программирования вы на нём освоите, а вот все знания по синтаксису потом придётся выкидывать на помойку и учить заново.
По той же причине не стоит начинать изучение с Basic и ему подобных.
Есть семейства языков со своим "уникальным" синтаксисом, типа Pyton, Lisp и т.д., но если нет твёрдой уверенности, что дальше будете работать именно с ними, то тоже не советую. На начальном этапе цена переучивания синтаксиса очень высокая.
В общем, я бы рекомендовал начать с С-подобных языков. Из основных тут, собственно C, C++, C#, Java, JavaScript и PHP. Есть ещё ряд других, но они не на столько распространены.
JavaScript - отметаем сразу. Он делался "на коленке" и содержит в себе множество нелогичных конструкций с которыми приходится мириться современным разработчикам. Плюс это язык с так называемой "динамической" типизацией. Как язык для изучения основ использовать его точно не стоит.
Также, по причине "динамической" типизации, отметаем PHP.
Чистый C... я бы поспорил. С одной стороны, в начале будет тяжело из-за постоянных ошибок с утечками памяти и неправильной адресацией, но с другой, если освоите это, то дальше будет на порядок проще с пониманием нового.
С++, который ещё называют "C с классами" - то же самое, но добавляются концепции объектно ориентированного программирования. С точки зрения обучения основам принципиальной разницы нет.
Остаются C# и Java. Они "одноклассники", созданные прямыми конкурентами для решения бизнес-задач. Java больше распространён, у C# чуть более понятный и логичный синтаксис.
Дальше имеет смысл отталкиваться от задач. Если есть желание заняться, например, написанием игр, то всё-таки стоит начать с C/C++ и сразу развивать в себе навыки контроля памяти и прочих специфичных для C/C++ нюансов. Если же больше привлекает решение бизнес-задач, то смотрите, какие свзанные с этим конторы есть в вашем городе и целенаправленно затачивайте свои знания под это. Если у вас в городе, допустим, никто C# не практикует, то и изучать его смысла особо нет.
Anani Bareyan, а дальше что? У новичка через несколько месяцев обучения в голове будет 50% знаний по алгоритмике и прочим нужным вещам, а ещё 50% - по синтаксису. Это у матёрых спецов, которые в типовых ситуациях нужные алгоритмы уже на подсознании применяют, расклад может быть и 80/20, и 90/10 и даже больше, а новички хорошо, если те самые 50/50 распределение получат.
И после этого у них два расклада. Либо дальше сидеть на синтаксисе Basic'a, но нормальных языков промышленной разработки, по сути, нет (я в курсе про VB.NET, но про хоть сколько-нибудь массовое использование его на проектах даже близко не слышал), либо менять язык.
Переход с условного C# на условную Java, или с C на C# для новичка будет относительно дешёвым, так как синтаксически языки очень близкие. Да, заморочки будут, особенно если человек уже начал в глубину лезть, но в пределах разумного. А вот с бейсика перебраться на что-то С-подобное уже на порядок сложнее. Профи, да, сделает это без особого труда,пожертвовав примерно 10-й частью своих знаний. А вот новичку придётся выкидывать уже почти половину. И это критично.
Меня самого в своё время хорошо так помотало по пути Basic/Pascal/C в самом начале изучения программрования. И могу точно сказать, что с без этих перескоков всё было бы значительно легче. Можно было бы спокойно идти вперёд, не откатываясь назад каждый раз на несколько недель.
человеку который не разбирается в программирование бейсик и паскаль помогут понять саму суть программирования. но практической пользы эти языки не принесут. язык си это основополагающий язык для большинства других языков программирования. питон слишком специфичен, его круг задач тоже узок и скорее всего он не пригодится. так что остается только си
Алексей Шмелев, в целом, да, но тут уже начинается беда с компиляторами. Из моего опыта, после самых первых заданий на циклы/массивы самым лучшим заданием, которое толкает новичков активно расти дальше, является игрушка. На ней и кучу алгоритмов можно объяснять не абстрактно, а на практике показывая, зачем оно нужно, и у студентов мотивация очень сильно подпрыгивает по сравнению с условным перемножением матриц для решения абстрактных дифуров. И вот тут всё и встаёт колом. Старые добрые досовские компиляторы графику поддерживают только через прямое обращение к видеопамяти, что современная винда сильно не любит. По крайней мере лет 10 назад, когда эта проблема была актуальна для меня, я так и не смог найти компилятор с нормальным стартом досовской графики под виндой, который можно было бы спокойно отдать студентам-новичкам, не рассказывая им кучу всего про эмуляторы, виртуалки и иже с ними. А делать графику уже под Windows на том же Visual C++ - мрак полный, в плане того, что я знаю гораздо менее затратные способы отчислить большую половину потока.
У шарпа с этим, кстати, сильно проще и лет 10 назад было, и сейчас, с активным развитием того же Unity.
Вас спрашивают с чего начать и вы пишите "Также, по причине "динамической" типизации, отметаем PHP.". Так может он сначала принципиально разберется что к чему, а потом пихать ему Си. Дальше ""уникальным" синтаксисом, типа Pyton". Именно с питон, javascript, php начать проще всего.
Вы бы еще ассемблер посоветовали.
Punk Print, я не раз и не два слышал, что у человека, который пишет на языке со статической типизацией, переход на динамическую проблем не вызывает. А вот наоборот часто бывает очень больно. И наглядных примеров тоже хватало. Лично мне, в своё время, повезло - переход легко прошёл (я с бейсика начинал, потом паскаль, C, C++, немного PHP, C#, JavaScript), но примеры того, как PHP-шник пытался выучить C# я видел не раз, и очень часто это тяжело было.
Поэтому если есть желание целенаправленно уходить в веб, то начинать с JavaScript тоже вариант. Аналогично и для питона, или пхп - если есть понимание, что работа будет целенаправленно с ними - не вопрос. Но если мы говорим про классический подход к обучению, когда язык будушей работы заранее неизвестен, я бы всё-таки с "динамики" начинать сильно не рекомендовал бы.
Если действительно с нуля, однозначно Visual Basic. Он (Visual Basic for Aplication - VBA) встроен во все приложения Microsof Office: Word, Excel, Accses - это само по себе уже полезно, особенно для технарей, вынужденных вести расчёты. Один мой знакомый пишет вспомогательные программы для бухгалтеров. 30 тыр в месяц не напрягаясь, поскольку всё им давно уже написано.
Агдамов Александр, даже не знаю, как реагировать. Access, по факту, не используется практически нигде (я знаю, что есть отдельные организации, но я говорю именно про массовое использование), Excel ценен именно тем, что в нём можно кучу всего сделать без программирования, а макросы для Word давно уже стали притчей во языцах как способ распространения вирусов. Я уж не говорю о том, что макросы не переносятся в облачные документы, или в OpenOffice, блокируются большинством антивирусов по уже озвученной причине, да и сам Microsoft их использование настоятельно не рекомендует. Нет, я не спорю, что есть определённые узкие ниши в полузакрытых организациях, и я очень рад за вашего знакомого, который смог найти себе место под солнцем, но с точки зрения начала изучения программирования вы даёте людям очень плохую рекомендацию.
дельфи не язык, это платформа разработки. сказать учил дельфи это примерно как сказать учил визуал студию ну или phpstorm