Программирование для Чайников

Программирование для Чайников

@lifeONet

Чайник - между прочим, это не обидный эпитет XD.

К сожалению, не помню, но вы сами можете в Сети поискать. Один чувак, не русско говорящий, зарядил толи цикл, толи первую в своем роде - книгу в стиле Programming for DUMMIES. А русскоговорящие надмозги перевели и адаптировали как - "программирование для чайников", хотя по-сути - "... для болванов.
Ну, да ладно, не об этом речь.

Я недавно разговаривал с одним товарищем. Говорит - хочу вкатиться в тему разработки, но хз что там и как. Последний раз, говорит - 10 лет назад на паскале потуги были, мол поди изменилось все с тех пор. Так что, я решил заметку об этом написать. Мысли свои и прочее.
Для тех, если вдруг, кто будет читать этот текст и при этом он разработчик, в теме и ащще... Хочу сказать - я не профессиональный разработчик, и не разработчик совсем. Я даже ни одной законченной программы не написал за всю свою жизнь. Все мои поделки, по большей части, это эксперементы с технологиями или языком программирования - не более. Короче, я хочу сказать, что это всего лишь мои мысли о разработке ПО и я могу во многом ошибаться.

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

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

Для меня программирование - это инструмент для изучения сложных систем, которые придумали другие программисты. Программерский подход пригодится не только в области электронных вычислений. Когда-то давно из интереса я озадачился изучением IP протокола. Конечно, я мог прочитать спецификацию, или книгу в стиле - TCP/IP для Чайников и что-то понять, возможно даже запонить надолго. Но я выбрал другой путь. Я решил написать для себя программу - сниффер сетевого трафика. По-путно я изучил не только IP, но и некоторые механимы работы операционной системы. Эти знания до сих пор при мне. В прочем, это давно известно - чем сложнее даются знания, тем они более качественно проработаны и сохраняются в нашей голове очень надолго.

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

Короче говоря, для меня - программирование - это интересное занятие, которое привносит дополнительного смысла в мою жизнь. Пафосно, да, согласен XD


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

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

Под Основами я вот что имею ввиду. Алгоритмы, математические в том числе. Знание архитектуры компьютерной системы (ЦПУ) или любой подсистемы - сеть, ввод-вывод и прочее. Конечно, для разработки web-приложений, некоторые вещи из основ могут совсем не понадобиться, но! Водитель, который разбирается не только в устройстве автомобиля, но и понимает некоторые из физических законов, которые "участвуют" при движении автомобиля - управляем автомобилем лучше. Это мое мнение. XD Кстати, справедливости ради, надо отметить, что управлять автомобилем можно и совсем без этих знаний - в программировании так же, но как я писал выше - это не программирование.

Так же, к основам относится понимание того как работает операционная система и ее устройство. Такие понятия как "бит", логическое "или" или "не" и многое прочее - тоже основы. Основы - да само слово говорит само за себя!

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

Мой любимый метод - придумай себе задачу и решай ее. Естественно, при такой формулировке - выбор инструментария (языка программирования и прочего окружения) это одна из подзадач.

Ладно, я надеюсь, основная мысль, которую я хотел донести - донеслась.

С этой заметке я стартую цикл статей "вкатываемся в мир Программирования".

Небольшой анонс и план для меня for next article:

  • популярные области программирования (в какую сторону можно развиваться в программинге)
  • современно-используемые языки программирования (и области их применения)
  • инструментарий (подготовим себе "песочницу")


P.S. Надеюсь мой стиль изложения не сильно утомляет. Я стараюсь выдерживать более менее строго-свободный стиль изложения, но меня все время подмывает сорваться в смесь витиевато-падонкавского-расслабленного... XD

P.S.S Тонна книг по IT - @bzd_channel


Report Page