10 способов научиться программировать самостоятельно

16 комментариев
10 способов научиться программировать самостоятельно

Программирование — один из ценнейших навыков для карьерного роста, саморазвития и создания чего-нибудь удивительного. Десять советов для тех, кто только начинает своё путешествие в мир программирования, от Lifehacker

10. Выясните, почему вы хотите программировать

Выбранное направление в учёбе будет зависеть в большей степени от  того, почему именно вы хотите научиться программировать и сколько времени вы готовы уделять этому процессу. Если вы хотите стать программистом, первое что следует сделать — это записаться на профессиональные курсы (Google скомпилировал список навыков и курсов для тех, кто хочет стать инженерами-программистами). Если вы хотите создавать игры и веб-сайты для развлечения в свободное время, лучшим выбором являются интерактивные курсы. Bloc создал сравнительную таблицу курсов в зависимости от загрузки, стоимости и причины изучения программирования.

9. Выберите правильный язык

Не существует лучшего языка программирования, и как только вы выучите один, вам будет нетрудно освоить и второй. Так что не стоит зацикливаться на выборе первого языка. Тем не менее, считается, что некоторые языки даются новичкам легче, чем другие.

Язык, с которого стоит начать, зависит от причины изучения. (К примеру, если вы хотите создать приложение под iOS, вам лучше начать с изучения Swift). Если вы со всей серьёзностью отнеслись к намерению программировать, можно начать с языка C. Хотя выбрав Python, вам будет проще влиться в струю программирования. Приводим инфографику для сравнения нескольких популярных языков программирования.

8. Начните с малого… и будьте терпеливы

Независимо от выбора языка или метода обучения, вам следует начать с самого начала. Когда Дэвид Сински (David Sinsky) научился программировать за восемь недель, он, к примеру, потратил одни выходные на изучение основ Python, а другие — на Django. Взяв учебник, он удалял написанный код и снова проходил обучающий материал с нуля. Начните с основ и будьте терпеливы к себе. Взяв первый проект в программировании, разделите его на несколько этапов. И если один из способов обучения вам не подходит, не опускайте руки — попробуйте другой.

7. Попробуйте приложения для детей

Сейчас даже малыши учатся программированию. Несмотря на то, что многие программы для детского обучения весьма просты, некоторые из них (например, Scratch) подходят для любого возраста. Не имеет значения, сколько вам лет, даже детские анимационные приложения могут научить основам программирования (у edX есть новый курс обучения по Scratch).

6. Воспользуйтесь бесплатными онлайн-тренингами

Бесплатные онлайн тренинги и проекты (Codecademy, Hour of Code и др.) могут помочь вам в написании первой программы. Учебные пособия от Khan Academy, Codecademy, Code.org и других познакомят с основами программирования и всем необходимым для создания игры, сайта или другого проекта. Найдите нужный источник в зависимости от языка программирования, воспользовавшись Bento. Это хорошая отправная точка, однако дальнейшее обучение вам нужно взять на себя.

5. Пройдите онлайн-курс

Онлайн-курсы по программированию предполагают более обширную образовательную подготовку по сравнению с сайтами, предлагающами онлайн-тренинги по одному языку. Такие курсы предназначены для обучения основным навыкам в течение нескольких месяцев на занятиях университетского уровня. Я большой поклонник гарвардского онлайн-курса CS50 (его можно пройти бесплатно). Существуют также другие возможности. Вы даже можете получить образование университетского уровня, выбрав один из 15 онлайн-курсов.

Курсы по Data Science 

4. Бесплатные книги по программированию

Если вы застряли на какой-то проблеме или вам нужно найти ответ на свой вопрос, не стоит забывать о справочниках. На GitHub можно найти огромную коллекцию из более чем 500 бесплатных книг по программированию. Также доступна коллекция электронных книг, охватывающая 24 языка программирования.

3. Изучайте, играя

Иногда лучшим способом обучения являются игры. В то время, как многие учебники по программированию обучают вас программировать простые либо сложные игры, некоторые обучающие сайты сами являются играми: Code Combat и CodinGame — инструменты, используя которые вы можете весело провести время.

2. Найдите наставника или станьте им

Сообщество программистов полно людей, готовых помочь следующему поколению программистов. Hack.pledge () — сайт, который поможет вам найти наставника. Либо вы сами можете стать наставником для кого-то другого. Преподавание изученного поможет вам лучше запомнить информацию.

1. Разберите чужой код

Переписывая чужой код, исследуя каждую строчку на предмет ошибок, вы сможете лучше понять общую картину. Благодаря открытым исходникам кода, вы имеете возможность узнать всё, что угодно — продолжайте учиться, используя инкрементально-хакерский подход. Только не забудьте поделиться своим кодом, если вам удастся улучшить часть ПО.

7 бесплатных ресурсов для онлайн-обучения программированию
7 бесплатных ресурсов для онлайн-обучения программированию
По теме
7 бесплатных ресурсов для онлайн-обучения программированию
По теме
Все материалы по теме

Хотите сообщить важную новость?

Пишите в наш Телеграм

Горячие события

GoWayFest 4.0 Online Edition Conference
11 июля — 12 июля

GoWayFest 4.0 Online Edition Conference

Минск

Читайте также

Где в 2020 году выучить Python с нуля? Топ онлайн-курсов и школ
Где в 2020 году выучить Python с нуля? Топ онлайн-курсов и школ

Где в 2020 году выучить Python с нуля? Топ онлайн-курсов и школ

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

Лучшие онлайн-курсы, чтобы прокачать язык Python

Python — один из самых популярных высокоуровневых языков программирования общего назначения. За счёт достаточно простого синтаксиса, гибкости и масштабируемости, а также активного глобального сообщества пользуется огромным интересом у начинающих кодеров. Богатый набор инструментов и библиотек покрывает широкий круг самых разнообразных задач от веб-разработки и анализа данных до AI и научных вычислений. Это делает Python одним из самых востребованных языков среди работодателей, его применяют практически все ведущие ИТ-компании мира. TechRadar собрал 5 лучших курсов по Python с пяти образовательных онлайн-площадок.
Топ-9 языков программирования, которые помогут зарабатывать до $150 тысяч в год
Топ-9 языков программирования, которые помогут зарабатывать до $150 тысяч в год

Топ-9 языков программирования, которые помогут зарабатывать до $150 тысяч в год

Facebook разработала AI-транскомпилятор TransCoder
Facebook разработала AI-транскомпилятор TransCoder

Facebook разработала AI-транскомпилятор TransCoder

Обсуждение

-1

Лучше бы оригинальную статью перевели, без пафоса и воды из инфографики

2

А это по-вашему что, если не перевод?
Или претензия к тому, что статья неоригинальная?

2

"К примеру, если вы хотите создать приложение под iOS, вам будет необходимо освоить Swift"... для того, чтобы понять, что сначала необходимо было осваивать Objective C.

4

+1 по поводу Objetive-C

Кстати, встретил недавно интересную мысль, о том что начинать с прохождения online курса по конкретному языку не совсем хорошая идея. В начале нужно:
Foundations of Programming: Fundamentals
Foundations of Programming: Object-Oriented Design

Потом
Step 2: Learn Objective-C

Now I know what you’re thinking. You’ve heard all of these amazing things about Swift. Maybe you’re coming from another language that looks similar to Swift so you finally feel comfortable learning iOS development.

Listen, I get it, Objective-C looks like an alien language compared to most languages. You will notice people love to get into Swift vs. Objective-C debates online. Guess what? Total waste of time. You could be building instead.

Here is why you should learn Objective-C:

Tons of GitHub repos written in Objective-C
Tons of Stack Overflow questions written in Objective-C
Tons of legacy code written in Objective-C
Are you seeing a pattern here? When you are first learning, and you hit a roadblock, would you rather be able to find a time tested answer with 300 upvotes and solve your problem, or waste precious learning time because you decided to start with Swift?

If your goal is to eventually become a full time iOS developer, you need to learn Objective-C. Many employers expect you to know it, and a lot of them don’t even care about Swift right now because it’s too unstable to bet their hard earned business on.

Trust me, if you start right now with Objective-C, you will have an easier time, plain and simple. Plus, Objective-C is not going to disappear any time soon. It’s going to be around for years to come.

You should use the following book to learn Objective-C:
Objective-C Programming: The Big Nerd Ranch Guide 2nd Edition

----
How to become a Badass iOS Developer
https://medium.com/ios-os-x-development/how-to-become-a-badass-ios-developer-a87a1c78f609

0

Сравнение этой статьи с классическим текстом Эрика Реймонда "Как стать хакером" хорошо показывает, сколь велики перемены в нашей индустрии за последние годы. http://www.catb.org/~esr/faqs/hacker-howto.html

0

Все советы конечно полезные но они бессмыслены если человек подходит к ним без должной подготовки. Онлайн трененги не дадут эффекта если их просто выполнять. Материал нужно обязательно записывать а не просто изучать. Записывать кратко куданибудь в файл, гугл доки или еще лучше в какой-нибудь специальный сервис типо https://maketips.net/about Записывание инфы само по себе позволит создать в мозге правильную систему знаний и приучит к порядку. Весело смотреть когда люди которые провели уйму времени и денег за курсами говорят "Я уже все забыл, я не могу это сделать, ну его это прогрммирование...". Записывать записывать и еще раз записывать. кратко, понятно, и ни в коем случае ни чего не зазубривать. Мозг это как оперативная память - в нем должно находится самое главное. Все остальное должно быть красиво разложено на постоянном носителе.

1

Рекомендую начать изучать программирование с основ, на сегодня лучшим из лучших является курс Гарвардского университета по основам программирования CS50. который стал своеобразным бестселлером во всем мире. Курс совершенно бесплатный и доступен на английской на сайте courseera.org. перевод CS50 на русский 2016 года доступен по адресу:
https://level-80.com/cs50-na-russkom-2016-nedelya-0/

0

Самостоятельно сложно научиться программировать

0

*** Комментарий удалён в соответствии с п 2.3.4 Пользовательского соглашения. ***

0

Большинство современных книг и ит-курсов называются "Программирование на языке x для чайников" "Технология y для начинающих" "Cоздаём приложения для Android" и т.д. Может сложиться впечатление что нужно просто знать какой-то язык или какуюто технологию и можно написать любую программу, но это не так. Язык программирования это просто набор правил и команд, чтобы обьяснить компьютеру какие действия вы хотите чтобы он выполнил. Можно знать и 4-5 языков программирования и не уметь написать сколь-нибудь полезной программы.

0

А теперь к сути - программист помимо языка должен знать, пусть и неглубоко следующие дистиплины Сomputer Science, математические основы информатики, архитектура компьютера, алгоритмы и структуры данных, строение операционных систем, компьютерные сети и протоколы.

Комментарий скрыт за нарушение правил комментирования.
П. 4.1.2. Пользовательского соглашения — https://dev.by/pages/agreement

0

Многие веб-девелоперы, сайтостроители и юзабилити оптимизаторы мне возразят, ну зачем все это надо, мол у нас есть какой-то волшебный фреймворк который сам все настроит и с оптимизирует. Недавно наткнулся в сети на подобного кадра который обучает новичков программированию за деньги. Он утверждал что писал на PHP но однажды сайт который он делал лег, и теперь он пишет на питоне на технологии Django, мол это более надежно и сайт будет держать больше онлайна и не ляжет.

Cамо сабой данный кадр например впринципе не знает что такое Data Structures, или что такое Масштабирование приложений, и как оно осуществляется. Хотя если бы он например прочитал эту книгу: PHP 7 Data Structures and Algorithms, Mizanur Rahman, то возможно была бы надежда на просветление.

Комментарий скрыт за нарушение правил комментирования.
П. 4.1.2. Пользовательского соглашения — https://dev.by/pages/agreement

0

Может по C# менторство кто предложит?
Обещаю быть паинькой и не думаю что "вайти в айти" - легко
пишите в телеграмм @paulavich

Комментарий скрыт за нарушение правил комментирования.
П. 4.1.2. Пользовательского соглашения — https://dev.by/pages/agreement

Спасибо! 

Получать рассылки dev.by про белорусское ИТ

Что-то пошло не так. Попробуйте позже