Саид Садыков
Саид Садыков | Репутация: 125 (Кандидат) 11 августа 2011 в 14:43
Хоть я по специальности инженер, но что-то ни клиется с языками программирования. Может кто-нуб подскажит с чего лучше начать?
Павел Пучкин
Павел Пучкин | Репутация: 234 (Кандидат) 11 августа 2011 в 15:11

С основ программирования. Или вообще с низкого уровня - архитектура ЭВМ и проч., чтобы знать, как это все работает там, внутри.

Александр Колесник
Александр Колесник | Репутация: 149 (Кандидат) 11 августа 2011 в 15:27

neoascetic а Вы сами программист, коли такие рекомендации подаете? Обычно сначало изучаються "учебные" языки - Turbo pascal например, а потом уже обучаються архитектуре, что бы было проще понять зачам что и к чему. Архитектура это не "низкий" уровень, а аппаратный. Низким принято принимать языки типа ассемблер. 50% современных программисто не изучали ни аппаратную часть ни языки низкого уровня и отлично себя чувствуют. Я бы рекомендовал начать с Pascal - в нем довольно просто понять основы и литературы много. А по завершению начать изучать например связку Java SDK + NetBeans- вострбовано нынче на рынке труда, либо С++ Builder - такие специалисты всегда нужны. Если эти языки идут туго - то можно взяться за 1С - тоже востребованые специалисты и учить много не надо, но в замен прийдеться разбираться в бизнес процесах предприятий на которых будете работать. ППС относительно тегов SQL не язык программирования а язык запросов) Его поддержа осуществляеться нынче почти во всех языках специальными библиотеками для работ с базами данных.

Арина Попова
Арина Попова | Репутация: 154 (Кандидат) 11 августа 2011 в 17:54

Начните с Pascal или Delphi. Лучше найти где-нибудь видеокурсы, например на тех же торрентах (посмотрите по отзывам какие лучше), тем у кого совсем плохо такие видеокурсы помогают. ну и тут записаться на изучение Pascal или Delphi. Я не знаю есть ли тут видеокурс по Delphi или Pascal, попробуйте поискать. У самой сначала не все клеилось с языками программирования, пока не начала смотреть видеокурсы. К тому-же, по Delphi и Pascal куча всякой литературы. Очень поможет видеокурс для школьников "Программирование и знакомство с алгоритмами". Там все подробно и понятно объяснено, он есть тут, на ИНТУТ. Также можно изучить курсы "Вирусы и средства борьбы и сними", "Введение в цифровую электронику", "Основы современных операционных систем", помогут. Они на ИНТУИТе есть. А начнете изучать - чем больше практики - тем лучше. Чем больше примеров программ попробуйте написать, которые в курсе лекций приведены, тем проще будет в дальнейшем.
Хотя, конечно, сейчас все больше требуется язык С++.

Алексей Андреев
Алексей Андреев | Репутация: 115 (Кандидат) 11 августа 2011 в 21:24

Начать надо с изучения русского языка.

Сергей Леонович
Сергей Леонович | Репутация: 103 (Кандидат) 11 августа 2011 в 23:36

верно, с русского.
продолжить C/C++, на нём и остановившись в общем случае.
если требуется быстро или работа с БД - Delphi (Embarcadero Rad Studio) или C# (Microsoft Visual Studio)
веб программированиек программированию имеет слабое отношение, но даже если вопрос и про это - HTML, затем JavaScript , затем PHP или Perl

Светлана Шумейко
Светлана Шумейко | Репутация: 200 (Кандидат) 12 августа 2011 в 03:54

1)Выбери язык.
2)Скачай и установи среду разработки. (Используй поиск в Интернет, чтобы найти какую нужно IDE и где скачать.
3)Найди какие-нибудь видеокурсы и смотри их, ОБЯЗАТЕЛЬНО повторяя всё на своём компьютере.
Можешь ещё и книжку какую-нибудь почитать. И вот - ты выучил язык. И тут часто оказывается, что свою программу ты написать не можешь :( Ничего удивительного. Те, кто изучают иностранный язык, сталкиваются с той же проблемой - вроде бы и слова все знают, и грамматику, и текст сложный могут прочитать, а вот заговорить (или понять на слух носителей языка) - почти все затрудняются.
Поэтому, выучив язык, нужно переходить ко 2 этапу.
1)Осовить работу с Отладчиком.
2)Брать какую-нибудь программку, которую показывали как написать (например, в видеокурсе) и пробовать её слегка изменить САМОМУ. А когда будут выскакивать ошибки, искать их с помощью отладчика. Это, между прочим, очень интересно.
И вскоре после этого ПОПРЁТ! Не обязательно всё самому придумывать. На первых порах можно поискать код, где реализован нужный кусочек кода, и содрать. Возможно, слегка придётся переделать. Так и становятся асами, чего и тебе желаю. :) А на дурные советы начать с русского языка не обращай внимания. У меня были очень умные коллеги, которые писали безграмотно по-русски. Это, может, показатель талантливости. :)

Алексей Пащенко
Алексей Пащенко | Репутация: 106 (Кандидат) 12 августа 2011 в 07:24

Начти с питона, Главное даже близко не подходить ни к паскалю, ни к дельфи
http://www.python.org/

Егор Семенов
Егор Семенов | Репутация: 303 (Кандидат) 12 августа 2011 в 10:13

Начинать программирование надо с составления блок схем. Берешь задачу любую и превращаешь ее в блок схему.
Пример: сварить щи
1) взять кастрюлю
2) если кастрюли нет, найти ее (купить, одолжить у соседа)
3) налить в кастрюлю воды 
4) если воды нет, найти ее
5) взять капусту
6) если нет...
7) взять картошку
8) если нет...
далее так же оформляем: "в готовый бульен покрошить капусту, закинуть в кипящую воду, покрошить морковь, закинуть, поварить до готовности капусты (проверять на вкус) закинуть картошку, варить до готовности картошки, выключить. "
Составляешь схему, видишь, что есть повторяющиеся элементы (найти если нет, покрошить, проверить на готовность). Выносишь это повторение как функцию в отдельную подпрограмму....
Все это на бумаге, MS Visio или что больше нравится, но именно блок схема.
Как только научишься решение задачи представлять блок схемами, то половина дела сделано. Останется только перевести блок схему на язык программирования. А уж какой это будет язык - зависит от задачи.
В последствии этот элемент (построение блок схемы) будет производиться на лету в голове, и ты будешь сразу писать код, но на первых порах удержать в голове общую схему программы не получится.
Далее развитие я представляю так:
1) потренироваться на паскале.
2) прочитать Введение в операционные системы для того, чтобы понимать что такое фифо, пайп, форк, тред итд.
3) изучить Си
4) если покажется мало, изучить ассемблер
После этого уже будет представление что такое программа, как она взаимодействует с ОС и железом. На основе этих знаний программировать на том языке, который больше подходит для решения поставленной задачи.

Аргишти Петросов
Аргишти Петросов | Репутация: 150 (Кандидат) 12 августа 2011 в 14:33

Какой вам по душе и легче изучается, с того и начните.

Oleg Melnik
Oleg Melnik | Репутация: 115 (Кандидат) 12 августа 2011 в 16:31

УСТАНAОВИ VISUALSTUDIO_2008 ИЛИ ДРУГУЮ ВЕРСИЮ И УЧИ VISUALBASIK ИЛИ С#
НО НАЧИНАТЬ ЛУДШЕ С VISUALBASIK  РЕКОМЕНДУЮ КНИГИ А.КЛИМОВА
ИЛИ ЗАЙДИ НА ЕГО САЙТ ОЧЕНЬ ИНТЕРЕСНО НА МОЙ ВЗГЛЯД ИМЕННО ТАК
НУЖНО ПРЕПОДАВАТЬ ЛЮБУЮ ДИСЦИПЛИНУ ЭТО ТАЛАНТЛИВЫЙ УЧИТЕЛЬ!!!

Павел Пучкин
Павел Пучкин | Репутация: 234 (Кандидат) 12 августа 2011 в 16:43

Syslie, да, сам я программист коли такие рекомендации даю. 
Алгоритм простой:
1. Человек инжинер -> наверняка присутсвует логическое мышление и с физикой все впорядке
2. С вероятностью в 70 процентов у него "ни клиется" с высокоуровневыми языками программирования. Вполне возможно, оттого, что не понимает, как оно все взаимодействует с железом.
3. Паскаль и делфи (особенно делфи по книжкам "глазами хакера" - зло, пайтон в этом случае гораздо лучше, как сказал suntsu - практические навыки, куча библиотек и РАБОТАЮЩЕГО ПО, решающего насущные проблемы, можно покавыряться в исходниках.
Хотя я смотрю со своей колокольни. Сейчас я был бы не прочь начать свое обучение с низкого уровня, а не с этого вашего Паскаля - но, увы, время вспять не повернуть

Александр Колесник
Александр Колесник | Репутация: 149 (Кандидат) 12 августа 2011 в 17:56

=) А какое отношение имеет "высокоуровневый" язык программирования, к взаимодействию с железом? О_о Вот уже 3 года програмирую на Java под  интегрированной средой разработки Eclipse, чет пока взаимодействия с железом не увидел. Это вообще какие умственные способности надо иметь, что бы представлять занимаясь ООП какие процессы происходят во время программирования в хардвер) Та оно и не нужно. Человек делает языки программирования что бы абстрагироваться от токов в схемках и с помощью обьектов, аттрибутов и отношений приблизиться к проблемной области.
ПС насчет "глазами хакера" - многие мои знакомые, которые начинали с журналов "хакер" и т. д. в итоге сейчас очень хороши в своих областях ИТ. Помоему все ровно как книга называеться, главное что бы интерес вызывала, даже пусть она будет не идеальна в своем изложении материала - это с опытом само прийдет при желании развиваться.
Насчет Паскаля - да, многие о нем крайне негативного мнения, мне самому он не ахти, я 2 года работал с Делфи и мне не понравилось, но если человек говорит что ему трудно разобраться, то это с моей башни самый понятный язык для начала. А потом любой другой язык со своим синтаксисом за 2 месяца подтянуть можно.

Светлана Шумейко
Светлана Шумейко | Репутация: 200 (Кандидат) 13 августа 2011 в 00:23

Если задача конкретная, например, какую-то программу переделать, то лучше и начать изучать тот язык, на котором программа. Да ни в одном языке нет такого, что уж слишком трудно для понимания. Я сама по образованию инженер-механик, а сейчас знаю 5 языков. Кстати, кто-то тут писал, что 1С:Предприятие очень простой. Так вот, я бы так не сказала. Я когда начала его изучать (версию 7.7), уже отлично знала и долго проработала на FoxRro (и 2.6 и Visual) и VBA. Но освоить V7 (на котором пишут код в 1С: 7) оказалось значительно труднее. А уж то, что он предметно-ориентированный и надо разбираться в учётных вопросах (бух.учёт, управленческий учёт) хотя бы в общих чертах, добавляет трудности для "обычного" программиста. В версии 8.1 и выше кода нужно писать значительно меньше, констукторы, СКД и т.д, но ведь и в Delphi компонентов на форму накидал, обработчики попрописывал и программа готова.
Итак. вывод: Считаю, что если тебе всё равно, на каком языке учиться программировать, то лучше на том, по которому есть хорошие обучалки.
Например, по Delphi неплохая обучалка Любаева, а на ИНТУИТЕ 2 очень удачных курса Ачкасова Вячеслава Юрьевича. По программированию на 1С:Предприятие 8.1 тоже 2 удачных курса Заики Александра Александровича (ещё и с видео), а по Интернету гуляет обучалка Павла Чистова.
Если не имеет значение, какой язык учить, могу посоветовать JavaScript. Совсем всё просто, и есть обучалка Евгения Попова. Можно запускать программы прямо в браузере или с помощью WSH прямо в Windows как другие исполняемые файлы. Можно наваять очень гибкие программы для задач администрирования (вместо батников).
Что касается знания железа. Я написала не один десяток довольно сложных программ, и при этом не умела сама даже вытащить застрявший листок бумаги из принтера. Так что не заморачивайся с основами операционных систем. Достаточно того, что этим вопросом владели те программисты, которые создавали среду разработки. А прикладному программисту без этого можно обойтись. Хотя если ты инженер, то как раз изучить железо для тебя будет проще.

Алена Пончик
Алена Пончик | Репутация: 105 (Кандидат) 14 августа 2011 в 00:10

Подружитесь с учителем программирования или с программистом, умеющим объяснять. Начинать "с нуля" в одиночку действительно очень трудно. Если с головой все в порядке, то 2-3 вводных уроков должно хватить, чтобы "въехать" в систему и дальше работать самостоятельно. Обычно (хотя и не всегда) программирование легко дается тем, кому легко давались математика и языки. С какого языка начинать - почти все равно (да, С труднее дается, чем Basic, но не принципиально). Желательно поставить нормальную систему программирования (для официальтно бесплатных характерно отсутствие нормальных хэлпов и непонятных для новичка зависонов).

Богдан Добровольский
Богдан Добровольский | Репутация: 112 (Кандидат) 14 августа 2011 в 16:46

Начни с СИ ибо большинство языков СИ подобные 

Сергей Зубарев
Сергей Зубарев | Репутация: 106 (Кандидат) 14 августа 2011 в 21:58

Для чего Вам программирование?Какие задачи Вы ставите перед собой?Самое главное чтобы интересно было Вам, иначе далеко не уйдете.Хотите заняться сайтостроением - изучайте PHP и MySQL, создавать приложения-самый популярный сейчас С++, хотите делать игры для IPHONE и т.п.-Objective C,а учить ради "учить", мне кажется лишнее, ибо многие языки переходят в историю.