Как стать программистом с нуля в домашних условиях?

15 ответов на вопрос “Как стать программистом с нуля в домашних условиях?”

  1. Barg Ответить

    Вот несколько специализированных компиляторов с поддержкой языка C:
    Microsoft Visual Studio – профессиональный инструмент, поддерживающий множество языков, в том числе и несколько серверных. Подойдет для новичков, если брать его «на вырост»:

    Borland C++ — бесплатный компилятор, идеально подходящий для начинающего обучение. В отличие от предыдущего инструмента, отличается ясным и понятным интерфейсом. Поэтому его освоение не вызовет особых трудностей даже при самостоятельном освоении азов программирования:

    Code::Blocks – бесплатная среда разработки, поддерживающая написание кода на нескольких языках. Средний по сложности освоения вариант:

    Что касается специализированной литературы, то советовать книги определенных авторов мы не будем. Тут, как говорится, выбирайте, что душе угодно. Потому что в большинстве случаев подбор самоучителя по программированию – это индивидуальный процесс. Используйте тот источник, который больше подходит именно для вас.
    Да и в интернете можно найти очень много информации. Например, на нашем сайте специализированной литературе по IT тематике посвящен целый раздел.

    Тенденции на рынке программирования

    После освоения основ программирования у многих сразу появится вопрос, куда двигаться дальше. Уже на этом этапе обучения следует задумываться о выборе основной специализации в области программирования. Вот те, которые больше всего востребованы на современном рынке:
    Веб-программирование – здесь понадобятся знания PHP, CSS и HTML;
    Разработка приложений под мобильную операционную систему Android – данная платформа построена на основе Java. Поэтому потребуется знание основ этого языка;
    C# (си sharp) – дальний потомок C. На основе C# построена веб-технология ASP.net от Microsoft.

    И последний совет всем начинающим. Перед тем, как приступить к обучению программированию с нуля, следует запастить терпением. А также: таблетками от головной боли, кофе, чаем и побрить череп наголо. Потому что во время постижения программных наук, обучающиеся часто вырывают волосы со своей головы вместе с корнем. Удачного старта!

  2. Grosar Ответить

    Для многих, кто никогда не программировал, обучение программированию кажется невероятно сложной задачей. Как бы то ни было, спасибо тому огромному количеству ресурсов, которые недавно стали доступны в Интернет и являются бесплатными — самообучение программированию никогда еще не было таким простым.
    Я начал изучать программирование в начале этого года, и могу сказать по своему опыту, что изучение достаточного количества материала, чтобы создать свой собственный прототип не такая уж и сложная задача, как вам кажется. В самом деле, если вы хотите иметь рабочий прототип в течение двух месяцев, не прибегая к использованию отгулов, это абсолютно выполнимая задача.
    Ниже я описал простой путь от ничего не зная о разработке программного обеспечения до обладания рабочим прототипом за восемь недель, который примерно повторяет шаги, которые я выполнил.

    Получение начального понимания языка программирования Python и общих методов программирования (2 выходных дня):

    Learn Python the Hard Way. Несмотря на название, это довольно простой способ, он делает изучение основных понятий очень легким, и большинство уроков займет менее 10 минут. Тем не менее, я обнаружил, что данный способ не работает для некоторых, более сложных тем, так что я рекомендую остановиться после урока 42 и двигаться дальше.
    Google’s python class. Читайте заметки и / или смотрите видео и делайте все упражнения, пока вы не будете выполнять их правильно — не подсматривая в ответы. Борясь с упражнениями, которые я постоянно делал неправильно было очень полезным для меня в качестве полученного опыта, и я узнал бы гораздо меньше, если бы я просто посмотрел на ответы и пытался убедить себя, что я понял упражнение.
    Эти два ресурса немного взаимозаменяемы. Я рекомендую делать первые несколько уроков из обоих чтобы увидеть, какой вам больше нравится. После того как вы закончили один из них, просмотрите в другом те понятия, которые усвоились не в полной мере, это хороший способ получить дополнительную теорию и практику.

    Получение начального понимания веб-фреймворка Django (1 выходной):

    Пройдите Django учебник.
    Удалите весь код, который вы создали в процессе выполнения шагов из учебника.
    Пройдите учебник еще раз, заново.
    В первый раз я прошел учебник от начала до конца просто следуя инструкциям, шаг за шагом, без полного понимания, что каждый шаг делает, так как все было в новинку.
    Во второй раз я не был так сосредоточен на новизне концепции и смог сосредоточиться на понимании того как все части взаимосвязаны.

    Получение более глубокого понимания Python / общих концепций программирования (4-8 выходных дня):

    Udacity’s intro CS class. Udacity курсы, как правило, разделены на 7 сеансов занятий (2-3 часа за сеанс), которые вы можете сделать в своем собственном темпе. (Я большой поклонник педагогики Udacity и рекомендую класс среднего уровня программирования или класс веб-разработки, как последующие для прохождения в этом двухмесячном курсе обучения).
    Unit 1 of MIT’s intro CS course. Действительно полезны в обучении и на удивление легко усваиваются.
    Опять же, я хотел бы рекомендовал попробовать каждый из них и посмотреть, какой вам понравится больше. Я делаю оба, но это, наверное, перебор.

    Практика построения простых веб-приложений (2 выходных дня):

    Выполняйте упражнения из Django в примерах. Эти упражнения не так строго ведут ученика, как учебник Django, но они предлагают хороший способ, чтобы начать разрабатывать свои собственные простые веб-приложения.

    Создайте свой прототип (2 выходных дня):

    Создание прототипа всего за 2 выходных дня? Да, вы будете смущены тем как он выглядит (я точно был), в этом весь смысл (перевод цитаты: «Если вы не смущаетесь первой версии вашего продукта, вы запустили его слишком поздно».
    Вот и все. 8 недель (или меньше) и вы ушли от ничего не зная о разработке программного обеспечения до рабочего прототипа. Не так уж и сложно, так ведь?

    Следующие шаги:

    Само собой разумеется, что существует огромная разница между относительно беглым объемом знаний, необходимого для создания простого прототипа (в разрезе данного поста) и объемом знаний и опыта, необходимые, для того чтобы стать действительно квалифицированным инженером-программистом.
    P.S. Ниже приведены несколько другие потенциально полезные ресурсы — пожалуйста, оставьте ссылки в комментариях, если у вас есть предложения по другим ресурсам, которые обучают программированию:
    Stanford’s intro CS courses
    Stanford’s iPhone development class
    Harvard’s intro CS course
    Codecademy
    Оригинал: How I Taught Myself to Code in 8 Weeks

  3. Vudokinos Ответить

    Бывает, что человек, совсем не связанный с IT, проникается интригующей красотой этой сферы и ставит себе задачу постепенно освоить программирование с нуля. И тут он зачастую просто теряется, не понимая, с чего начать, и нуждаясь в хорошем фундаменте и системном подходе.
    Я, будучи недавно в такой же ситуации, гуглила, искала мануалов на Хабре (кое-что нашла: Десять советов начинающим программистам, Начинающему программисту про стартапы и не только…), но в итоге всё же была вынуждена обратиться за советом к одному хорошему человеку, который составил для меня вот такой план. С разрешения этого человека размещаю данный план на Хабре – вдруг он пригодится и кому-то ещё. (Тем более, что перечисленные книги относятся к «золотому фонду» литературы в данной сфере и проверены временем.)
    UPD: Новичкам советую обратить внимание на комментарии — там активно и аргументированно корректируется этот план.
    Этап I. Основы
    Нортон «Программно-аппаратная организация IBM PC»
    Эта книга, несмотря на свою давность, относятся к тем, что пока отнюдь не устарели. Как новичок подтверждаю – повествование вполне понятно и для почти полного чайника в IT.
    Гук «Аппаратные средства IBM PC»
    А эту книгу стоит прочитать «поверх» – она расскажет о том, как дела в данной сфере обстоят сейчас.
    Этап II. Hardware
    Шаг 1
    Морс, Алберт «Архитектура микропроцессора 80286»
    Почему тут берётся за основу именно микропроцессор 80286 – станет понятно по изучении трудов первого этапа.
    Шаг 2
    Гук «Аппаратные интерфейсы ПК»
    Гук «Интерфейсы устройств хранения»
    Этап III. Операционные системы
    Шаг 1
    Таненбаум «Архитектура компьютера»
    Шаг 2
    Колисниченко, Аллен «Linux: полное руководство»
    От общей теории переходим к изучению конкретной операционной системы – на примере Linux.
    Немет, Снайдер, Хейн «Руководство администратора Linux»
    Этап IV. Собственно программирование
    Шаг 1
    Керниган, Ричи «Язык программирования С»
    Почему первым для освоения выбран именно язык Си? Как мне рассказали знающие товарищи, он поможет достичь правильного «программистского мышления», чего было бы сложно достичь, начиная изучение, скажем, с Паскаля. Кроме того, язык Си по-прежнему используется в наши дни и подходит как для прикладного, так и для системного программирования.
    Шаг 2
    Кнут «Искусство программирования»:
    Том 1. Основные алгоритмы
    Том 2. Получисленные алгоритмы
    Том 3. Сортировка и поиск
    Бентли «Жемчужины программирования»
    Зачем осваивать эти труды? Как уже отмечали на Хабре – «наверное, нигде больше, чем в айти, не изобретается такое огромное количество велосипедов». Данные книги помогут этого избежать – и попутно будут прививать умение писать не просто код, а хороший код.
    Ну а для затравки можно прочесть небольшой цикл лекций «Культура программирования» (автор – А. Бабий). Он помогает начинающим программистам понять, что их деятельность не будет проходить в вакууме, а неизбежно включит взаимодействие с другими программистами, с заказчиками и пользователями (а также включит необходимость копаться потом в своих собственных или в чужих программах).
    Закономерный вопрос новичка: сколько времени займёт изучение всего этого? По прогнозам моего советчика, у человека, который может тратить на изучение программирования только вечера и выходные, на прочтение и осмысление литературы первых трёх этапов уйдёт полгода-год. На четвёртый этап тоже даётся год – чтение должно сопровождаться практикой по самостоятельному составлению программ. Как получится на самом деле – время покажет.
    Буду крайне благодарна за ваши советы и уточнения.

  4. Оч.ЗаБаВнАя.Я Ответить

    Итак, вы чувствуете, что пришла пора поменять сферу деятельности и освоить новую профессию. Почему бы не попробовать программирование? За это хорошо платят, это перспективно и интересно. Только вот сразу возникает вопрос: что делать, куда бежать, как начать программировать?
    Как человек, прошедший этот путь с нуля, могу вас уверить, что при правильном подходе к обучению, терпении и настойчивости вы сможете в скором времени стать программистом и найти хорошо оплачиваемую работу. В этой статье я хочу поделиться советами, как начать программировать.

    Ставим цель

    Чтобы понять, к чему стремиться и какого уровня достичь, ответьте на простой вопрос – зачем вам программирование? Если ваша цель — стать профессионалом и зарабатывать программированием на жизнь, настраивайтесь на серьезную и интенсивную подготовку. При этом вы должны быть готовы ежедневно уделять время изучению программирования.
    Если ваша цель — хобби или расширение кругозора, можно выбрать темп помедленнее по мере наличия свободного времени и желания. Но в любом случае не стоит растягивать обучение «на годы». Во-первых, знания уходят быстрее, чем накапливаются, во-вторых, технологии программирования очень быстро развиваются. Пока вы изучаете какой-то инструмент разработки или фреймворк, он может устареть и оказаться ненужным к моменту трудоустройства.
    Лучшее решение, на мой взгляд, набросать приблизительный план обучения. Но для начала определитесь со стеком технологий.

    Выбираем язык

    Если у вас есть конкретное представление, чем бы вы хотели заниматься в программировании, то это значительно упрощает выбор языка. Каждый язык имеет свою специализацию и направленность. Конкретную информацию об этом можно легко найти на просторах интернета.
    Что еще почитать:
    Что делают UX и UI-дизайнеры, а что — фронтендщики?
    Близок ли конец Java? Нет! И вот почему…
    Что нужно понимать программисту-новичку?
    Если у вас такого представления нет, присмотритесь к двум аспектам: востребованность технологии на рынке и сложность изучения.
    Лично я в своё время остановился на Java. Причина такого выбора проста: этот язык очень популярен и востребован на рынке. Кроме того, его несложно изучать. Плюс я хотел быть поближе к веб-технологиям.

  5. Aflame Ryaen Ответить


    От автора: работа программистом может стать вашим счастливым билетом в жизнь. Это сложная дорога, требующая огромного количества потраченных усилий и времени на изучение языка HTML, CSS, Java, PHP и прочих технических штук, но, черт возьми, игра стоит свеч. Продолжайте чтение статьи, если вас не пугают трудности на пути к звездам, и вы четко хотите понять, что нужно, чтобы стать программистом.
    Статистика показывает, что профессии, связанные с компьютером, интернетом и технологиями оплачиваются гораздо выше по сравнению с «ручной работой», и я сейчас не о плетении бисером, пробивании отверстий перфоратором и забивании гвоздей в балки.
    Хорошим вариантом для дела всей жизни может стать программирование. Профессия нелегкая, но интересная и высокооплачиваемая. Ниже я постараюсь детально рассказать о том, как стать программистом с нуля самостоятельно, а также уточню, какие знания и навыки для этого необходимы.

    С чего начать?

    Перед началом поиска информации о том, как стать программистом с нуля, подумайте: а нужно ли это вам вообще? Этот вопрос не относится к тем, у кого за спиной уже имеется база знаний, полученная на спецкурсах или в соответствующем учебном заведении.
    Если вам с трудом давалась в школе математика и другие технические науки, то, может быть, лучше думать не о том, как стать программистом, а как выбрать близкую по духу профессию? К тому же двери вакансий, связанных с интернетом и компьютером, не закрываются.
    JavaScript. Быстрый старт
    Изучите основы JavaScript на практическом примере по созданию веб-приложения
    Узнать подробнее
    К примеру, можно попробовать себя в копирайтинге, рерайтинге или контент-менеджменте, если у вас хорошо получается писать тексты и статьи. Однако если вы твердо решили развиваться в обсуждаемом сегодня направлении, то давайте же разберемся, что нужно чтобы стать программистом с нуля.
    Развиваться в этой тематике можно, выбрав один из 4 представленных ниже путей:

    Самостоятельно стать программистом (самообразование).

    Стать программистом без образования — нельзя. Можно ли стать программистом без получения образования в высшем учебном заведении? Безусловно, да. В интернете существует огромное количество всевозможных курсов по программированию, которые позволяют получить хорошее образование.
    Причем многие из них находятся в бесплатном доступе, поэтому если вы на тематических форумах уже успели всех достать сообщениями: «Хочу стать программистом, с чего начать? А где взять деньги? Я же с нуля!», то вот, пожалуйста ответ. Скачивайте бесплатные курсы, обучайтесь, применяйте полученные знания на практике, зарабатывайте.
    Также в интернете полно различных тематических статей, видео- и аудиоматериалов. В общем, не пропадете, главное — копать поглубже, никто вам на блюде с голубой каемочкой ничего не подаст.
    Рекомендация: не беритесь за все сразу. Постройте себе примерный план обучения, к примеру, 1 тема в неделю. Детально осваивайте ее и не переходите к новой, не осознав до конца все тонкости предыдущей. Безусловным плюсом самообразования является факт, что вы сами строите программу, исходя из того, что нужно для достижения конкретного результата.

    Быстро стать программистом при помощи специализированных курсов.

    Необязательно думать над тем, как стать программистом в домашних условиях. Получить должные знания можно, пройдя специализированные курсы в вашем городе. Как правило, подобные программы обучения захватывают не все программирование целиком, а позволяют погрузиться в отдельную узкую тематику, изучить конкретные технологии или навыки. К примеру, с помощью одного стандартного курса можно от А до Я проштудировать адаптивную верстку менее, чем за 30 дней.
    JavaScript. Быстрый старт
    Изучите основы JavaScript на практическом примере по созданию веб-приложения
    Узнать подробнее

    Получить высшее образование в университете.

    Этот путь будет самым долгим. За сколько можно стать программистом в университете? Лет 5, не меньше. Нельзя сказать, что у вас будет большое преимущество в знаниях, ведь половину образовательной программы разбавят ненужными предметами вроде физкультуры, философии и прочих наук, с преподавателями которых явно не поговоришь на языке HTML или Java.
    Тем не менее, небольшой бонус в виде корочки появится. Если вы выбираете путь карьериста в компании, тогда она наверняка пригодится при устройстве на работу. Однако рекомендую: раз уж тратите 5 лет на это дело, изволить походить на лекции и постараться выжать максимум из предлагаемого обучения.

    Стать крутым программистом с помощью ментора.

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

    Какие знания необходимы?

    Знания, которые необходимо получить, зависят от того, на чем вы хотите специализироваться. Каким программистом лучше стать — решать только вам. У каждого человека свои цели и предпочтения. Если говорить о том, что надо, чтобы стать программистом в самом начале, то советую определиться с подходящим языком программирования (PHP, Java, Python, Ruby и т. д.). Критериями выбора могут стать следующие 3 параметра:

Добавить ответ

Ваш e-mail не будет опубликован. Обязательные поля помечены *