5 основных онлайн-курсов для программистов-самоучек.

Все доступно бесплатно онлайн.

1. Как кодировать простые и сложные данные

Итак, наш первый курс технически равен 2, но второй является прямым продолжением первого, поэтому их можно считать 1.

Как кодировать простые данные научит вас некоторым основным шаблонам, которые помогут вам писать меньше кода и упростить его структуру. Это фантастика для знакомства с основами тестирования, при этом подчеркивая его полезность.

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

2. Введение в компьютерные науки CS50

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

Это даст вам опыт работы с C, Java и Python, которые должны быть в каждом арсенале инструментов программиста. При этом также удается втиснуть такие концепции, как абстракция, структуры данных, инкапсуляция, безопасность и разработка программного обеспечения.

Честно говоря, если вы программировали меньше года или двух, это просто необходимо.

3. Введение в компьютерные сети

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

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

4. Программная инженерия: Введение

Этот курс посвящен процессу создания программного обеспечения. Все, от методологий разработки до проектирования и рефакторинга. Для программиста-одиночки, который самоучится, это даст вам необходимые навыки для работы в команде.

5. Тестирование программного обеспечения

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

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