История изменений
Исправление
stevejobs,
(текущая версия)
:
«программирование чего-то» (в т.ч. встроенных систем) строится на базе. База - «какой-то несложный язык»+алгоритмы. Вначале нужно потратить некоторые усилия на умение удержаться на воде.
Чтобы вообще что-то мочь сделать нужен язык - это как отвёртка, ногтём винтики не очень повыкручиваешь.
Обычно нужно сделать не как-то, а впихнуть в ограниченные ресурсы компьютера - за это отвечают знания устройства железа и алгоритмы. Устройство железа - зависит от того, что ты програмируешь - это специальное знание. Алгоритмы нужны везде. Алгоритмы нужно прочитать и какую-то часть из них обязательно написать руками Читать и изучать нудно, но альтернатива этому - придумывать самостоятельно. Придумывать самостоятельно - сложно, проще нажиться на готовеньком.
После того как появится хотя бы минимальная база, у тебя наверняка уже будут самостоятельные мысли, куда её применить. И вот с этими вполне конкретными мыслями можно обращаться на ЛОР.
В качестве первого шага могу предложить стандартное упражнение: написать программу «список задач». Программа показывает список задач, которые нужно сделать сегодня. У задачи есть заголовок («Передвинуть кондер») и основной текст (детальное описание как это сделать). Задачи можно создавать, удалять, менять порядок. Сначала сделай эту программу хоть на чём-то (например, в командной строке, или чему там будут учить в книжке «туториал для новичков»). Потом на том, что интересно, с чем собираешься дальше работать (можно оформить это в виде обычной программы с графическим интерфейсом, или в виде сайта, или в виде телнет-сервера, или даже плагина для Eclipse).
Потом когда пройдет первый шок и ты поймешь, что в общем-то уже «можешь писать настоящие программы» - лучше всего подготовиться к собеседованию, найти работу, и там тебя научат реальным вещам.
Т.к. у тебя нет высшего технического, на собеседовании тебя могут дрючить чтобы проверить, что ты не тупой (или просто поиздеваться и выпроводить - такие тоже есть). Поэтому придется доказывать, что ты не тупой. Так что перед собеседованием придется затратить настолько много усилий, сколько вообще возможно, чтобы выучить что-то новое. Для тебя как новичка «верхняя граница» сколько изучать - только количество свободного времени, которое ты готов потратить. «Верхняя граница» там очень высокая, ее плохо видно, так что изучай что сможешь. Упор делать на важных для новичка вещах - язык, алгоритмы, умение написать программу в выбранной области программирования
Про область. Например, для сайтостроительной фирмы желательно показать твое умение написать сайт. «Область» обычно четко оговаривается в вакансии. Чтобы посмотреть, какие вообще бывают области (за какие платят деньги!) нужно обязательно посмотреть вакансии на сайте hh.ru
Исходная версия
stevejobs,
:
«программирование чего-то» (в т.ч. встроенных систем) строится на базе. База - «какой-то несложный язык»+алгоритмы. Вначале нужно потратить некоторые усилия на умение удержаться на воде.
Чтобы вообще что-то мочь сделать нужен язык - это как отвёртка, ногтём винтики не очень повыкручиваешь.
Обычно нужно сделать не как-то, а впихнуть в ограниченные ресурсы компьютера - за это отвечают знания устройства железа и алгоритмы. Устройство железа - зависит от того, что ты програмируешь - это специальное знание. Алгоритмы нужны везде. Алгоритмы нужно прочитать и какую-то часть из них обязательно написать руками Читать и изучать нудно, но альтернатива этому - придумывать самостоятельно. Придумывать самостоятельно - сложно, проще нажиться на готовеньком.
После того как появится хотя бы минимальная база, у тебя наверняка уже будут самостоятельные мысли, куда её применить. И вот с этими вполне конкретными мыслями можно обращаться на ЛОР.
В качестве первого шага могу предложить стандартное упражнение: написать программу «список задач». Программа показывает список задач, которые нужно сделать сегодня. У задачи есть заголовок («Передвинуть кондер») и основной текст (детальное описание как это сделать). Задачи можно создавать, удалять, менять порядок. Сначала сделай эту программу хоть на чём-то (например, в командной строке, или чему там будут учить в книжке «туториал для новичков»). Потом на том, что интересно, с чем собираешься дальше работать (можно оформить это в виде обычной программы с графическим интерфейсом, или в виде сайта, или в виде телнет-сервера, или даже плагина для Eclipse).
Потом когда пройдет первый шок и ты поймешь, что в общем-то уже «можешь писать настоящие программы» - лучше всего подготовиться к собеседованию, найти работу, и там тебя научат реальным вещам.