Что сделать чтобы не найти айтишный. Стив Макконнелл – Совершенный код

На одних только статьях журнала «Хакер» далеко не уедешь. Это я тебе точно говорю. Если хочешь стать настоящим специалистом в области IT, необходимо учиться и обязательно получить фундаментальные знания о предмете. К счастью, сегодня для этого возможностей больше, чем когда-либо. В Сети не только доступно множество учебников бесплатно, но и стремительно развиваются совершенно новые, прогрессивные способы обучения. И особенно это касается нашей – IT’шной - специальности.

Цель данного материала - показать, насколько просто сегодня можно обучаться самостоятельно. Быстро осваивать новые технологии и языки программирования. При этом делать это не в напряг и получать настоящее удовольствие от обучения. Я не претендую на полноту картины, и эта статья, само собой, не является сборником всех проектов, которые могут помочь тебе в самообразовании. Но я постарался собрать некоторые особенно интересные сервисы, которые были интересны лично мне. Уверен, они пригодятся и тебе.

Изучаем английский язык

Я серьезно рискую, начиная этот материал со слов «английский язык». У многих людей с ним сложности, и ирония в том, что чем серьезнее проблема, тем больше люди противятся его изучению, придумывая отговорки и оправдания. Как бы там ни было, могу тебе сказать с полной уверенностью: по-настоящему успешный IT-специалист если и может обойтись без английского языка, то упускает при этом многие интересные возможности. Большинство авторитетных конференций проходит на английском. В самых крупных сообществах специалистов принят английский язык. Известные ученые ведут блоги и пишут статьи на английском языке. На английском языке говорят в Силиконовой долине. И на нем же изъясняются программисты из Индии, которых стало так много, что спрятаться от них у тебя не получится при всем желании:). Короче говоря, изучение языка нужно добавить в свой личный список дел в качестве одного из приоритетных пунктов. Сказать по правде, абсолютное большинство ресурсов, о которых я буду говорить далее, требуют хотя бы минимального знания английского. Причина простая: на русском ничего подобного не делают (уверен, что только пока). Однако для первого проекта из нашего обзора иностранный как раз не нужен - напротив, он направлен на то, чтобы ты быстро прокачал свои знания «ИнЯз’а». И он сделан в России:).

LinguaLeo

Есть простое правило: чтобы лучше и увереннее подтягиваться на турнике, нужно больше и чаще подтягиваться на турнике. Просто интенсивнее заниматься. Так же и с английским: чтобы хорошо понимать на слух английскую речь, не вслушиваясь в каждое слово в попытке разобрать хоть что-то, нужно больше слушать этой самой речи. Можно начать с просмотра какого-нибудь сериала, подключив для уверенности оригинальные субтитры, но… по сравнению с тем, что представляет сервис LinguaLeo, - это прошлый век. В его базе уже собрано огромное количество сериалов, всевозможных фильмов, записей различных семинаров и выступлений (например, тематических минивыступлений с TED.com), лекций из западных университетов (в том числе по иностранному языку) и так далее. Все это разбито на категории по тематике, сложности и рейтингу у пользователей. Но главное заключается в том, как именно сервис позволяет этот контент потреблять. Рядом с видео выводится полная расшифровка речи, поэтому ты всегда можешь прочитать непонятный на слух фрагмент. Встречаешь неизвестное слово? Один клик, - и LinguaLeo тут же показывает перевод и заносит это слово в твой личный словарь, чтобы дальше с помощью самых разных упражнений ты мог запомнить его и начать использовать в нужном контексте. Никаких тебе больше ковыряний с субтитрами и словарей, – ты просто смотришь интересный для себя контент и быстро разбираешься с непонятными местами. Для себя я не вижу лучшего способа, во-первых, пополнять словарный запас, а во-вторых, привыкнуть к английской речи. Чтобы «отрабатывать» те слова, которые просто встречаются в интернете, я давно себе установил специальный аддон для браузера, реализующий интеграцию с сервисом.

Онлайн-универы

Найдется немало людей, которые захотят поспорить о том, необходимо ли ИТ-специалисту высшее образование. Правы те, кто говорит, что фундаментальные знания остро необходимы. Но можно согласиться и с теми, кто утверждает, что всему можно научиться самостоятельно, - было бы желание. Последнее стало еще проще после того как ведущие западные вузы с зашкаливающей стоимостью обучения начали не только выкладывать видео своих лекций (например, в iTunes), но и вообще формировать культуру преподавания университетских предметов онлайн. Хотел бы я сейчас отметить подобные инициативы со стороны российских вузов, но здесь сказать пока нечего.

Учебные курсы от Стэнфорда

Университет Стэнфорда, расположенный в Калифорнии, известен по всему миру. Фактически это кузница кадров для технологических компаний Силиконовой долины, многие из которых расположены в Пало Альто - в том же городе, что и сам университет. Попасть в Стэнфорд - мечта для многих молодых людей, которые жаждут сделать карьеру в области ИТ. Чем больше читаешь про Стэнфорд, тем больше радуешься тому факту, что осенью университет запустил проект бесплатных онлайн-курсов. Изначально всем желающим предлагалось пройти три курса: «Машинное обучение» (ml-class.org), «Искусственный интеллект» (ai-class.com), «Введение в базы данных» (db-class.org). Каждый из курсов состоит из лекций, проверочных работ и финального экзамена. В случае успешного завершения обучения студент получает сертификат в виде PDF-файла, заверенного цифровой подписью преподавателя. Эксперимент оказался успешным, и в начале года Стэнфорд анонсировал сразу дюжину новых курсов, в том числе:

  • Информационная безопасность (security-class.org);
  • Проектирование и анализ алгоритмов (security-class.org);
  • Теория игр (cs101-class.org);
  • Информатика (cs101-class.org);
  • Криптография (cs101-class.org).

Помимо непосредственно ИТ’шных предметов, есть пара курсов по предпринимательству (в области высоких технологий). Я пока успел послушать курс по машинному обучению и получил огромное удовольствие. Курс построен таким образом, чтобы быть понятным практически каждому, хотя, безусловно, знания в области дискретной математики и математического анализа будут здесь очень полезны. Надо сказать, что видео любого из курсов сопровождается субтитрами на случай, если что-то сложно разобрать на слух. Как правило, язык очень простой, поэтому все понятно даже со средним уровнем английского.

MITx от Массачусетского технологического института

Ты наверняка слышал и о MIT - не менее известном западном вузе. Тот тоже пошел по стопам Стэнфорда и в начале года анонсировал разработку MITx - технологической платформы для онлайн-образования. И вот уже в феврале появилась информация о первом курсе, который будет проходить с помощью этой системы – «6.002x: Схемотехника и электроника». Обучение начнется весной и потребует примерно десять часов в неделю. Предмет непростой, поэтому допускаются только студенты, обладающие необходимыми знаниями по электричеству, магнетизму и дифференциальному исчислению. Среди трех преподавателей - профессор Джеральд Сассмен, который создал язык Scheme и является автором одного из самых лучших учебников по программированию - «Structure and Interpretation of Computer Programs». В скором будущем обещается появление и других предметов. Уверен, что подобное по зубам и российским учебным заведениям, которые просто обязаны не отставать.

Попробовать технологию!

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

JavaScript

Впрочем, курсы английского - хоть и нужный, но все-таки шаг в сторону. Главное, о чем я хочу сегодня рассказать - это сервисы, позволяющие изучить вполне конкретный язык программирования. Тут очень заметна закономерность: чем активнее язык развивается и набирает популярность, тем больше появляется инструментов для его изучения. Для примера я взял несколько особенно модных языков программирования: Python, Ruby (плюс Ruby on Rails) и, конечно же, JavaScript (HTML5). С последнего и начнем. Ни одно современное веб-приложение не обходится сегодня без ударной дозы кода на JS, на котором полностью реализовано взаимодействие с пользователем. Особенные гики умудряются имплементировать на JavaScript совершенно невозможные вещи: взять хотя бы проект виртуальной машины, на которой вполне себе успешно запускается Linux (bellard.org/jslinux). Но этот случай мы рассматривать не будем:).

Codecademy

Простой вопрос: какой самый проверенный способ выучить новый язык программирования? Взять умную книгу и начать ее читать. Этот подход никогда не устареет. Так было двадцать лет назад, так есть и сейчас. Однако сложно представить, что к 21 веку не придумали более прогрессивных методов обучения, тем более - обучения программированию. Codecademy - это стартап, позиционирующий себя как школу разработчика. За семьдесят два часа после открытия он собрал более двухсот тысяч (вдумайся в цифру!) начинающих программистов, предложив им пройти интерактивный курс JavaScript.

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

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

Выучить jQuery за тридцать дней

Неотделимой частью JavaScript постепенно стала библиотека jQuery, упрощающая работу с HTML-документом, обработку событий, создание анимации и реализацию AJAX. Фактически jQuery во многом изменил подход к программированию на JavaScript. Разобраться с библиотекой в принципе несложно. Но чтобы сделать это еще более безболезненно, портал Nettuts+, известный своими качественными обучающими статьями, разработал специальный курс. Курс разбит на тридцать уроков-скринкастов по пятнадцать минут каждый, что позволяет день за днем постепенно брать библиотеку на вооружение. Как ни крути, а пятнадцать минут можно найти всегда. Да и формат обучения очень приятный: лично для меня нет ничего более понятного, чем непосредственная демонстрация кодинга с комментариями по ходу дела. Для тех, кто только начинает изучать JS, есть и видеокурс этого же автора (bit.ly/AqK4s0).

Первый полет на jQuery

Если спросить, кто снимает скринкасты эталонного качества, то среди победителей совершенно точно будет онлайн-школа программирования c<>de school. Это очень профессиональный проект, предлагающий как платные, так и бесплатные курсы для специалистов различного уровня. Курс «jQuery Air: First Flight» долгое время был платным, но с недавнего времени открыт всем желающим. Он состоит из пяти уровней, каждый из которых включает в себя обучающий скринкаст и интерактивные упражнения по программированию, реализованные прямо в браузере. За прохождение заданий начисляются очки (например, 350 за решенную задачку). Если где-то возникла трудность, можно попросить подсказку, но в этом случае не избежать штрафных баллов. На первом уровне предлагается пройти азы JavaScript, на втором - селекторы, на третьем - CSS-атрибуты, на четвертом - манипулирование с HTML-элементами и DOM, на пятом - работа с событиями. Чтобы пройти курс, необходимо выполнить пятьдесят пять простых и не очень упражнений.

Ruby и Ruby on Rails

Если ты читал в прошлом номере интервью с Аленой Владимирской, которая по праву считается ведущим хедхантером Рунета, то уже знаешь, насколько востребованными сейчас являются программисты на Ruby on Rails. За грамотными специалистами, готовыми быстро поднимать растущие веб-проекты, гоняются все. И чем больше растет спрос, тем больше становятся зарплаты. Если у тебя есть опыт программирования, и ты хочешь переквалифицироваться на более востребованное направление, то Ruby в связке с Ruby on Rails - совершенно точно очень неплохой вариант. И выучить его сейчас можно довольно быстро. Впрочем, знание языка пригодится, даже если ты не собираешься работать профессиональным разработчиком. Ruby популярен и среди экспертов по информационной безопасности: к примеру, известный фреймворк для хакера Metasploit (и в том числе все его модули) написаны именно на Ruby.

rubymonk

Проект представляет собой интерактивную книгу, состоящую из пятидесяти упражнений, позволяющих быстро пройтись по основам Ruby. Тебе говорят: «Массив из элементов создается так – попробуй». И ты пробуешь. Далее объясняется что-то еще, - ты опять же сразу проверяешь это в действии. Как только знаний становится достаточно, тебе предлагаются более сложные упражнения. Совершенно улетно реализована проверка выполненных заданий (код решения, естественно, надо набирать прямо в браузере, а редактор даже поддерживает подсветку синтаксиса). Для каждого упражнения заданы контрольные точки, по которым проверяется правильность решения. Таким образом, в любой момент можно понять, что именно не нравится интерактивной системе, какой результат должен быть на выходе, и где в твоем решении спряталась ошибка.

try ruby

Если у тебя был мало-мальский опыт программирования, то эта интерактивная обучалка буквально за пятнадцать минут позволит тебе пройтись по базовым понятиям языка Ruby и понять, что к чему. Впрочем, даже если ты вообще никогда не имел дело с программированием, try ruby будет тебе по зубам. Правда, в этом случае обучение, вероятно, займет чуть больше времени. Всего нужно пройти восемь уроков и справиться с более чем пятьюдесятью заданиями. Проект стал еще лучше после того, как его взяла под свое крыло уже упомянутая выше школа c<>de school. Теперь это практически идеальный репетитор.

The Intro to Rails Screencast I Wish I Had

Как уже было отмечено, язык Ruby четко ассоциируется с популярнейшим фреймворком для построения веб-приложений Ruby On Rails. Последний помог взлететь не одному стартапу из Силиконовой долины, в том числе и Twitter’у. Джеффри Вэй - главный редактор сервиса tutsplus.com - записал убойный скринкаст с говорящим названием «Скринкаст для чайников в Rails, с которого я хотел бы начать сам». В 40-минутном ролике в самой доходчивой форме рассказывается, как использовать Rails. После этого слова «Models», «TDD», «ActiveRecord», «RSpec», «Capybara», «Partials» уже не будут пугать. Это не единственный скринкаст для начинающих: немало видеоуроков для программистов самого разного уровня можно найти на другом профильном проекте - railscasts.com.

Rails for Zombies

После того (и только после того!) как у тебя будут необходимые знания Rails и некоторый опыт в создании веб-приложений, обязательно нужно пройти бесплатный курс «Рельсы для зомби» от все той же школы c<>de school. Записанные на неизменно высоком уровне уроки, приправленные здоровой дозой юмора, сопровождаются упражнениями, составленными из ситуаций, с которыми каждый день встречаются программисты на «рельсах». Если этого курса тебе окажется мало, то у авторов есть продолжение «Rails for Zombies 2», но его можно пройти уже только за денежку.

Python

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

Более того, Python часто встраивают во многие серьезные приложения в качестве скриптового языка, чтобы иметь богатые возможности для создания сценариев.

Попробуй Python!

Лучший способ быстрого старта - попробовать онлайн-обучалку Python. По интерактивности сервис сильно проигрывает аналогичным проектам для JS и Ruby, но, тем не менее, позволяет пройти базовый курс обучения прямо в браузере. На компьютер не надо даже устанавливать интерпретатор. Это очень удобно: любой приведенный пример можно тут же попробовать в действии. Однако на этом интерактивность заканчивается: Try Python никак не проверяет твой код, не следит за правильностью действий и не предлагает задачки для проверки знаний. Весь курс состоит из семи частей (пять по Python и две по IronPython). Забавно, что сам сервис написан на Silverlight’е.

Онлайн-репетитор Python

Забавный сервис был разработан в рамках курса по программированию в известной американской кузнице программистов Массачусетского технологического института. Его идея заключается в том, чтобы визуализировать выполнения сценариев, написанных на Python, позволяя пошагово выполнять их (вперед-назад) и на каждом шаге просматривать значения разных структур данных (переменных, объектов в куче, фреймов стэка). Это может быть произвольный код, набранный прямо в браузере, или один из нескольких заранее заготовленных сниппетов, взятых из учебной программы Python в MIT. Забавно, что здесь есть несколько задачек, которые предлагают соискателям на должность программистов. С решениями. Сервис можно было бы назвать онлайн-отладчиком, однако для выполнения сложных сценариев использовать его уже нельзя из-за отсутствия возможности подключения модулей, выполнения I/O-операций и так далее.

Уроки Python от Google

Google давно славится тем, что активно использует у себя Python. В компании есть даже специальный курс, предназначенный для людей, у которых пока мало опыта в программировании (естественно, они не работают на должности разработчиков). Теперь этот курс полностью открыт и бесплатен. Он включает в себя пошаговые мануалы, видео лекций, а также много упражнений для тренировки и закрепления материалов. Первые занятия касаются базовых понятий в Python (вроде строк и списков), далее - последовательно освещается разработка полноценных приложений, работающих с файлами, процессами и HTTP-соединениями. Надо сказать, что в Google этот курс проходит по интенсивному сценарию и умещается в два дня.

Покажи эту статью друзьям.

Не буду придираться к трактовке терминов «актив» и «пассив», в конце концов, мы не в бухгалтерии. Черкну лишь несколько строк в подтверждение (а, скорее, и в подкрепление) позиции её автора.

UPD: Как стать успешным айтишником

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

Кредит

Кредит на увеличение активов может быть просто необходим и, в большинстве случаев, неизбежен. Вот, допустим мне, как предпринимателю пришлось приобрести в кредит автомобиль «лучше прежнего» только ради того, чтобы можно было безболезненно для души и ущерба репутации парковаться на видных местах у мест проведения деловых встреч с людьми, представляющими для меня коммерческие перспективы. С той же целью деньги тратились на неимоверно дорогой офис вместо того, который можно было снимать, отказав себе в паре пачек сигарет в месяц.
Да-да. Понты все еще продают. Но подчеркну: умеренные понты . Приехав на встречу с партнером в 23 года на Гелендвагене, вы рискуете заработать репутацию папиного сына, от которого ожидать чего-то серьезного не стоит. Вот как раз в этом случае кредит является плохим пассивом (терминология вдохновившего автора, дабы быть понятным читателю вдохновившего поста).
Примечание: Мой автомобиль окупился за три года (срок кредита, собственно).

Есть и ещё немаловажный момент, который каждый уважаемый читатель отнесет к той категории, которая соответствует его личным убеждениям:

Семья

Семья является эдаким приятным пассивом, на мой взгляд, который может, при неправильном рассмотрении, просто стащить ваш бизнес в Марианскую впадину. Обзаводясь семьёй, нужно знать одну простую вещь - заботы просто необходимо сочетать с вашей деятельностью по выращиванию Древа Благополучия, а не уходить в работу с головой, говоря, что у вас скоро все изменится. Вы потеряете и то и другое. Этому нужно будет научиться, разработав свою собственную систему тайм-менеджмента. Единомышленники кивают.

Ну и несколько советов лично от меня, но придуманные, скорее всего не мной. Просто подтвержденные годами и моим личным опытом.

Тайм-менеджмент

  1. Определитесь, для чего вам нужна та или иная социальная сеть. Если для времяпровождения - удаляйте аккаунт. Сэкономите от 300 часов в год (почти 2 месяца плодотворной работы при 8-часовом рабочем дне). Ну, или попытайтесь отвести для своего фейсбука два часа в воскресенье вечером. Ничего не потеряете.
  2. Проверяйте электронную почту не чаще, чем раз в час. Экономьте на этом еще 50 часов в год.
  3. Помните, на курение вы тратите 2 часа в день, употребляя по 1 сигарете в час. 700 часов в год. Сам я курить не бросил, но стал это делать реже и только в те моменты, когда это меня не отвлекает от работы: за рулем, например.
  4. Ограничьте телефонные разговоры до минимума. Научитесь формулировать лаконичные фразы для разговора. Освободите еще 150 часов в год.

Итого получаем 1200 часов в год, или 3,5 часа в день свобдного времени. Можно конвертировать его в собственные проекты, или умножить на стоимость человеко-часа специалиста вашего профиля и удивленно охнуть.

Расходы

Основной совет: Подходя к кассе в гипермаркете обязательно вспомните о том, что в вашей тележке не менее 30% абсолютно ненужного содержимого (если вы без списка), и еще 15% пропадет в холодильнике и будет выброшено. Более половины покупателей покупают ненужный продукт просто потому, что они голодны (вы же тоже после работы заскакиваете в магазин), а заботливые маркетологи распыляют из ароматических установок запахи копченой рыбки, колбаски и прочих вкусняшек. Выкладывайте половину, умножайте на средний чек и количество таких тележек в год.

Резюме

Всегда есть возможность выкроить время для развития и семьи, всегда есть возможность выкроить достаточное для старта собственного проекта количество денег (в разумном смысле). У меня получилось, чего и вам искренне желаю.

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

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

Что нужно знать «чайнику»

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

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

Многие начинающие обучение считают написание кода чуть ли не самой романтической профессией. Особенно увеличилось количество желающих познать программирование после просмотра фильма «Матрица ». Именно главный герой этой картины Нео подтолкнул многих к становлению на путь постижения программных наук:

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

После развала СССР все отечественные ВУЗы долгое время даже и не пытались перекроить свою систему обучения под потребности современного рынка. Не являлись исключением из этого правила и технические ВУЗы.

Программирования как отдельной отрасли и специализации не существовало как таковой. Его основы преподавались лишь как привязка к другим инженерным дисциплинам. И даже те крохи знаний, которые давались студентам в этой области, не соответствовали современным стандартам и утратили свою актуальность еще 20-30 лет назад.

В странах бывшего СССР основным языком программирования, преподаваемым в технических ВУЗах, был Бейсик.

Ситуация кардинально не изменилась и через 10 лет. Лишь некоторые учебные заведения, учуяв веяния нового времени, в начале двухтысячных года начали перекраивать свое обучение под мировые стандарты. И только с этого момента программирование стало восприниматься как отдельная профессия и специализация обучения:


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

А это в профессии программиста является наиболее важным аспектом. Поэтому большинство из сегодняшних гуру российской IT-индустрии начинали свое обучение программированию с нуля самостоятельно.

В некоторой мере такая тенденция сохраняется и по сей день. Хотя в наше время количество профессионалов, занимающихся преподаванием, заметно возросло.

С какого языка начать изучать программирование

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

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

Чаще всего выбор падает на язык программирования C (си) . Именно с него большинство новичков во всем мире начинают свое обучение. На основе C было создана основная часть программных языков, и во многом они наследуют его структуру и синтаксис.

Изучая C, вы постигаете основы не одного языка программирования, а сразу нескольких.


Рассмотрим особенности этого языка, делающего его оптимальным для изучения:

  • Простая для понимания основа – часть встроенных возможностей языка для простоты вынесена в отдельно подключаемые библиотеки. К таким элементам относится большая часть математических функций и методов для работы с файловой системой;
  • Оптимально подогнанная система типов – благодаря простому набору типов данных и строгой типизации уменьшается риск допущения ошибок в процессе написания программного кода;
  • Направленность C на процедурный тип программирования, при котором соблюдается четкая иерархия всех элементов кода;
  • Доступ к памяти машины с помощью указателей;
  • Минимальное количество поддерживаемых ключевых слов;
  • Поддержка области действия имен;
  • Поддержка пользовательских типов данных (объединения и структуры ).

Проще говоря, C – это то, с чего следует начинать новичку перед тем, как научиться программированию на других языках.

Программы (компиляторы) для программирования

Для обучения программированию недостаточно одного лишь желания и наличия компьютера с выходом в интернет. Для написания программ на C вам потребуется специализированное программное обеспечение – компилятор.

Компилятор – специальная программа, переводящая программный код в форму, понятную для компьютера.

Вот несколько специализированных компиляторов с поддержкой языка C:

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


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


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


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

Да и в интернете можно найти очень много информации. Например, на нашем сайте специализированной литературе по IT тематике посвящен целый .

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

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

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


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

Ирина Давыдова


Время на чтение: 13 минут

А А

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

Так или иначе – все начинают с нуля. И прежде чем с этого самого нуля начать – задайтесь вопросом, действительно ли вам нужна эта профессия?

Суть работы программиста – основные специализации, плюсы и минусы работы

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

Впрочем, иногда программист – и «швец, и жнец, и на дуде игрец». Но это, как правило, в маленьких фирмах, начальники которых экономят на специалистах.

Основные категории, на которые условно можно поделить всех программистов в соответствии с их деятельностью:

  • Прикладные специалисты. Задачи: разработка программного обеспечения для игр, редакторов, бух/программ, мессенджеров и др.; разработка ПО для систем аудио/видеонаблюдения, сигнализации и проч.; адаптация программ под чьи-либо конкретные нужды.
  • Системные специалисты. Задачи: разработка операционных систем, создание интерфейсов к базам данных, управление вычислительной системой, работа с сетями, контроль над работой созданных систем, и др. Эти специалисты зарабатывают больше всех других в своей области, благодаря редкости и специфичности профессии.
  • Web-специалисты. Задачи: работа с Интернетом, создание сайтов и веб-страниц, разработка веб-интерфейсов.

К плюсам профессии можно отнести следующие преимущества:

  1. Очень даже достойная зарплата.
  2. Высокий спрос на хороших специалистов.
  3. Возможность получения престижной работы без образования.
  4. Возможность зарабатывать удаленно, сидя дома на диване.
  5. Возможность работать удаленно на зарубежные компании.
  6. Творческая профессия (правда, нередко творчество зависит от пожеланий заказчика).
  7. Комфортные условия, которые обеспечивают крупные компании своим специалистам (бесплатные напитки/булочки, специальные места для отдыха и спорта, и проч.).
  8. Возможность получения «опциона». То есть, пакета акций компании. Правда, только после отработки определенного срока в компании.
  9. Расширение кругозора. По мере развития себя в профессии приходится знакомиться с самыми разными сферами жизни и вникать в самые разные системы – от делопроизводства и бухгалтерии до проч.

Минусы:

  • Работа «сутки напролет» — обычное дело для данной профессии.
  • Данная работа для многих людей будет скучной и однообразной.
  • Интересы специалиста и заказчика не всегда совпадают, и то, что очевидно для программиста, как правило, совершенно не объяснить клиенту. Это приводит к конфликтам и стрессам.
  • Не редкость – авральные режимы работы.
  • Необходимость постоянно развиваться, изучать новое, успевать эволюционировать вслед за IT-сферой. Всего за несколько лет программы устаревают, и приходится писать новые.

Видео: Как стать программистом?

Необходимые личные и деловые качества, профессиональные умения и навыки для работы программистом – что необходимо знать и уметь?

Главные качества хорошего программиста

Хороший программист должен…

  1. Любить свою работу. И не просто любить – болеть ею.
  2. Любить учиться и учить с нуля.
  3. Быть очень трудолюбивым, усердным и терпеливым.
  4. Быть готовым к постоянной рутинной работе.
  5. Уметь работать в команде.

Какие знания нужны будущему программисту?

Начинать следует с изучения…

  • Английского языка.
  • Устройства компьютера и физики всех процессов.
  • Языков программирования.
  • Методик разработки ПО.
  • Методик тестирования ПО.
  • Систем версионного контроля.

Язык программирования – с какого начать?

Также нужно будет изучить…

  • Java. Более популярный, чем Питон, и неплохой выбор для начинающего. Но более сложный, чем Питон.
  • PHP. Заточен под «веб», но будет полезен любому новичку.
  • C и C#. Весьма сложные языки, можно оставить их на потом.
  • Ruby. Хороший вариант для второго языка.
  • Django. Он научит программировать правильно. По сложности схож с Питоном.

Многое зависит от выбранного направления.

Например…

  1. Веб-программисту будут полезны знания HTML, CSS и JavaScript.
  2. Для десктоп-программиста — API и фреймворки.
  3. Для разработчика мобильных приложений — Android, iOS или Windows Phone.

Где обучаться на программиста с нуля – учебные заведения России, курсы, дистанционное обучение, онлайн-обучение?

Если у вас нет знакомых, которые могут обучить вас с нуля профессии программиста, то у вас есть несколько вариантов обучения:

  • Самообразование. Самый сложный путь к программированию, который лежит через изучение сайтов, приложений, книг и проч.
  • Университет. Если вы только закончили школу и мечтаете получить престижную профессию программиста, поступайте на соответствующий факультет. Основные знания вы все равно будете получать путем самообразования, но «корочка» поможет вам быстрее приблизиться к заветной цели. ВУЗы выбирайте технические, изучив заранее программы обучения.
  • Персональный учитель . Если вы сможете найти наставника среди программистов, самообучение будет более быстрым и эффективным. Ищите наставников на онлайн-форумах, на айти-тусовках, тематических конференциях и проч.
  • Курсы. Обучить вас тому или иному языку программирования смогут на простых курсах, которые можно найти даже в маленьких городах. Например, «Образовательный IT-портал GeekBrains», « Специалист» при МГТУ Баумана , «Компьютерная Академия ШАГ» , МАСПК .

Получить высшее образование по специальности программист можно в…

  1. МИФИ.
  2. Российском экономическом университете Плеханова.
  3. Московском государственном строительном университете.
  4. МГТУ Баумана.
  5. Государственном университете управления.

Видео: 7 ошибок начинающих программистов

Полезные онлайн-ресурсы и книги для обучения работе программиста

  • habrahabr.ru (статьи на IT-тематику, информация по самым разным темам). Этот ресурс известен каждому программисту.
  • rsdn.org (книги, актуальные вопросы, полезный форум, восполнение пробелов в знаниях, материалы на русском языке).
  • sql.ru (отличный удобный форум, полезная литература и даже предложения по работе).
  • theregister.co.uk (новости из IT-сферы).
  • opennet.ru (новости, полезные статьи, форум и проч.). Ресурс для профессионалов.
  • driver.ru (библиотека драйверов). Полезный сайт для новичков.

Ресурсы для обучения:

  1. ocw.mit.edu/courses (свыше 2000 курсов на разные темы).
  2. coursera.org (более 200 курсов, бесплатно).
  3. thecodeplayer.com (пошаговые руководства для новичков).
  4. eloquentjavascript.net (ресурс для введения в Java Script).
  5. rubykoans.com (для всех, кто изучает Ruby).
  6. learncodethehardway.org (изучение Python, Ruby, C и др.).
  7. udemy.com (платные и бесплатные курсы).
  8. teamtreehouse.com (свыше 600 уроков).
  9. webref.ru/layout/learn-html-css (для освоения HTML и CSS).
  10. getbootstrap.com (изучение возможностей Bootstrap).
  11. learn.javascript.ru (изучение frontend и Javascript).
  12. backbonejs.org (для фронтенд-разработчиков).
  13. itman.in/uroki-django (для изучения Django).

Бесплатные сайты для обучения в помощь новичкам:

  • ru.hexlet.io (8 бесплатных курсов по C и PHP, JavaScript и Bash).
  • htmlacademy.ru (18 бесплатных курсов для верстальщиков).
  • codecademy.com (популярные курсы по языкам, инструментам и проч.).
  • codeschool.com (более 60 курсов (13 – бесплатных) по HTML/CSS и JavaScript, Ruby и Python, iOS и Git, и пр.).
  • checkio.org (для изучения Python и JavaScript).
  • codingame.com (обучение через видео-игры, 23 языка программирования).
  • codecombat.com (изучение JavaScript, Python и пр.). Обучающая игра, доступная и для тех, кто пока еще не владеет английским языком.
  • codehunt.com (обучение поиску ошибок в коде).
  • codefights.com (обучающая платформа, через турниры на которой можно «загреметь» на собеседование в приличную IT-компанию).
  • bloc.io/ruby-warrior# (изучение Ruby, а также искусств/интеллекта).
  • theaigames.com (развитие навыков программирования – увлекательный игровой онлайн-тренажер для программиста).
  • codewars.com (сборник обучающих интерактивных задач для тех, кто обладает минимумом знаний).

Обычно на самостоятельное изучение основ программирования уходит от полугода до 12 месяцев.

Как быстро найти работу программиста и начать зарабатывать – советы бывалых

Естественно, устроиться в нормальную компанию без опыта работы вы просто не сможете.

Поэтому…

  1. Читайте книги, изучайте сайты и самообразовывайтесь, но уже сейчас начинайте писать свои самые 1-е строчки кода.
  2. Сами создавайте и усложняйте себе задачи по пройденному материалу.
  3. Ищите свои первые проекты, пусть даже и за «смешные деньги», записывайте себе в «резюме».
  4. Ищите работу на русскоязычных биржах фриланса (ru) и на англоязычных биржах (upwork.com) тоже – там больше шансов ее получить.
  5. Начинайте с маленьких проектов, которые вам по плечу.
  6. Не упускайте и вариант open source (в таких проектах всегда не хватает людей).
  7. Помогайте «за копеечку» (или даже бесплатно, для опыта) знакомым программистам. Пусть они дают вам несложные задания.

  • Обязательно пишем: свой опыт работы, список языков и технологий, которыми вы владеете, образование и контакты.
  • Не впихиваем в резюме весь перечень своих качеств и талантов. Даже, если вы виртуозно играете на баяне, писать об этом в резюме не стоит.
  • Оформляйте резюме с учетом креатива, но уместного.
  • Не стоит заполнять пункты вроде «ваши цели и амбиции» или «кем я вижу себя через 5 лет». Достаточно написать, чем вы занимались ранее и чем хотели бы теперь.
  • Не пишите о языках и технологиях, которые вам известны только по названиям. В резюме следует писать лишь те, в которых вы плаваете, как рыба в воде. Для всего остального есть волшебная фраза – «был небольшой опыт».
  • Если вы профессионально владеете Delphi, не забудьте упомянуть, что знаете также C#, jave или иной язык, потому как просто «программист дельфи» никому по сути не нужен (дельфи – это азы, с которыми знаком каждый выпускник).
  • Не упоминайте работу, которая была не по специальности. Это никому не интересно. Также никому не интересно, есть ли у вас водительские права или автомобиль. Вы же не курьером собираетесь устраиваться.

Перспективы карьеры программиста и зарплата программистов

Средняя зарплата программиста в крупных городах страны – от 50000 до 200000 рублей .

По России в целом – от 35 тысяч до 120000 .

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

От стажера до руководителя IT-отдела – путь не такой уж долгий, а зарплата на самом верху может достигать и 4000 долларов ежемесячно. Ну а потом можно двинуться и в руководители крупного проекта (прим. – по разработке ПО), а тут уже зарплата превышает 5000 долларов.

), в которой мы с коллегами отвечали на наиболее частые вопросы о том, с чего начинать желающим построить карьеру в IT. Размещаю у себя полный (не порезанный на части) вариант.

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

Сегодня на вопросы о том, с чего начать карьеру в IT, ответили представители тренинг-центра ЕРАМ: Евгений Пешкур, заместитель директора по подготовке персонала, Святослав Куликов, менеджер отдела по функциональному тестированию, Александр Барановский, руководитель образовательных программ по тестированию, и Светлана Захаренко, Java-тренер.

1. Хочу работать в сфере IT , но не знаю, с чего начать. Что посоветуете?

Евгений Пешкур:

Трудно советовать, не зная стартовых условий. Посоветую для среднего пользователя PC, уверенно овладевшего Counter Strike, форумами и социальными сетями.

Учите английский язык . Без шуток. Если вы не восприняли это серьезно, дальше можно не читать. Изучение английского до минимального уровня, применимого в компаниях, работающих на внешние рынки (уровень B1 , если кому интересно) занимает год-полтора. Знание другого иностранного языка будет плюсом, но никак не заменой. Вам простят незнание какой-либо технологии, но не отсутствие языковой подготовки.

В основе всего лежит то, чему учат все ВУЗы, – способность самостоятельно искать и изучать материал . Многие, не осознавая этого, рассматривают курсы как место, где их «возьмут за руку и приведут к успеху». На самом деле, вас приведут к промежуточному финишу, дадут сертификат (оценку, диплом) и далее сделают в блокнотике пометку «профнепригоден». И это будет связано не с результатом финального теста, а с вашим образом мышления. И опытный преподаватель это очень быстро определит, проверяя и обсуждая с вами ваше задание. «Незагугленное» и осмысленное решение (пусть и не работающее, даже попытка его создания), отходящее от того, что он сам преподал днем ранее, для него будет очевидным.

Начните с азов. Смешно и нелепо, но добрая половина из тех, кто идёт на курсы, не знают, что такое бит и байт. Замечали возмущения типа «платил за винчестер на 40 GB, а дали всего на 38»? Почитайте, что такое сети и каковы общие принципы их работы. Познакомьтесь с базовыми понятиями типа ascii, heap, process & thread, прерывание.

ООП. Тут при всей простоте определений всё сложно. К сожалению, простое изучение определений не даёт ничего. Наверное, это одно из немногих мест, где самостоятельное изучение малоэффективно. Попробуйте рассматривать ООП как образ мышления. Понимание ООП приходит через многократное написание и переписывание кода и общение с теми, кто его понял. Простых советов нет, но могу поставить цель: скорее всего вы действительно поняли ООП, если разобрались в работе и смогли написать программу типа Elastic Nodes .

Структуры данных и алгоритмы. Этого также не даст почти никакой из курсов, чаще всего предполагается, что это вы изучили в школе или вузе. Джентельменский набор терминов к изучению: дерево, стек, очередь, хеш. Алгоритмы… Не будем лезть в бутылку и советовать изучить теорию графов, но разобраться с различными алгоритмами надо. Как отсортировать массив (желательно знать и понимать несколько алгоритмов). Ваша цель – понять quick sort. Какие существуют способы обойти дерево.

Как видите, здесь почти не надо ходить на курсы, разве что на английский. Просто не игнорировать то, что вам преподают. Или суметь самостоятельно разобраться, если желание выспаться часто побеждало необходимость посещать скучные пары. Если мои намёки слишком туманны, то резюмирую: АНГЛИЙСКИЙ и немедленно! И понять все термины, упомянутые выше.

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

Александр Барановский:

IT – достаточно широкая и объёмная сфера с десятками профессий и специализаций. Поэтому первым шагом является выбор и осознание того, чем именно вы хотите заниматься. Потому что для каждой профессии нужно обладать определённым набором навыков, умений и складом ума. После того как определились с выбором, берёте лист А4 и с одной стороны записываете, что необходимо знать и уметь для начала карьеры в выбранной позиции (программист, специалист по тестированию, бизнес-аналитик и т.д.), а с другой – те знания и навыки, которыми вы обладаете на текущий момент. Точками, на которые стоит обратить внимание и с которыми стоит работать, являются «недостающие» вещи из списка умений. А тут все средства хороши – тренинги, книги, форумы.

Светлана Захаренко:

Мне кажется, начать нужно с понимания, почему вы хотите работать в сфере IT. Чем именно эта сфера привлекает вас, и что является основным мотивирующим фактором. Понимание позволит правильно расставить приоритеты и выбрать нужное направление.

Очень важно понять, чем именно в сфере IT вы хотите заниматься. Говоря о работе IT-специалиста, я бы рискнула провести аналогию с медициной. Медицина – большая область знаний, которая включает в себя множество направлений и профессий, и когда люди решают связать свою профессиональную деятельность с медициной, они скорее исходят из понятия «Я хочу быть врачом-стоматологом» или «Я хочу быть врачом-терапевтом».

2. У меня гуманитарное образование. Можно ли переучиться на программиста?

Евгений Пешкур:

Да. Кто такой «строитель»? Это архитектор, прораб, каменщик, маляр или сторож? А кого вы подразумеваете, говоря «программист»? Работа в IT – это не обязательно именно написание кода. Есть масса специализаций, где гуманитарий найдет себя: тестирование, бизнес-анализ.

Святослав Куликов:

Можно. Сложность переучивания, его скорость, эффективность и иные показатели будут индивидуальны для каждого человека. Стоит честно признать два факта:

  • чем вы старше, тем сложнее вам переучиваться (не только на программиста, а переучиваться вообще);
  • вы будете долгое время проигрывать в степени профессионализма тем, кто посвятил IT всю жизнь.

Но эти факты – не приговор, и я лично знаю тех, кто пришёл в IT из «гуманитарных профессий», но благодаря своей целеустремлённости добился ощутимых успехов.

Александр Барановский:

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

Светлана Захаренко:

Ничего невозможного нет, переучиться можно всегда:), вопрос в конечной цели и затрачиваемых ресурсах. Если вы решили стать программистом именно потому, что программирование вам интересно, переучиться будет не очень сложно, так как скорее всего интерес возник не спонтанно, вы его поддерживали, вы уже имеете представление о программировании, возможно, читали литературу, форумы, пробовали решать задачи.

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

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

3. Как выбрать «своё» направление обучения?

Евгений Пешкур:

Посоветоваться с теми, кто достаточно долго работает в IT и сам успел попробовать много различных ролей или тесно работал с представителями различных специализаций. Т.е. это специалист уровня Team Leader или выше. А далее пробовать.

Святослав Куликов:

В последнее время участились случаи «перепрофилирования в IT» с единственной целью – получением высокой зарплаты. Аргумент понятный, честный и имеющий право на существование. Но если деньги – единственное, что интересует вас в IT, то дальше вы рискуете столкнуться с серией сложностей и разочарований, так как заниматься нелюбимым делом – это всегда насилие над собой (даже при хорошей зарплате).

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

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

Светлана Захаренко:

Попробовать направление «на вкус». Например, если вы выбираете между программированием и тестированием, можно взять задачу и решить её с точки зрения программирования, затем можно взять ещё одну задачу и решить её с точки зрения тестирования, остаётся только сравнить результаты и ощущения. Используйте давно известный способ проб и ошибок. К сожалению, не существует такого рецепта, чтобы сразу правильно и без «шишек».

4. Какие технологии нужно в первую очередь изучить новичку? (Какие базовые знания в программировании и использовании ПК нужны новичку в IT -мире)?

Святослав Куликов:

Сначала – просто выйти на уровень уверенного пользователя. Если кто-то, читая этот ответ, стал криво усмехаться и подумал про «вот, опять про гуманитариев», то смею вас разочаровать: технарь, не умеющий скопировать файл по сети, пропинговать хост или построить график в Excel – явление столь же частое.

  • Быстрый: сразу изучать то, с чем вы собираетесь работать на своей первой IT-должности. Это быстро потому, что позволяет (временно!) пропустить огромный пласт «фундаментальных знаний», но побочным эффектом является способность решать только узкий круг очень чётко описанных задач. Уйму недостающих знаний придётся накапливать по мере наработки опыта.
  • Медленный: начать с базы – от основ алгоритмизации к паре языков программирования (сейчас, как правило, – Java/C# + что-то из серии JavaScript/Python/Ruby/PHP) и изучению конкретных технологий (я затруднюсь назвать «универсальные примеры», слишком уж много вариантов).
  • «Универсальный путь для сферического ученика в вакууме»: JavaScript + HTML + CSS, Java или C# + базы данных.

Светлана Захаренко:

Мне кажется, что самыми базовыми будут хорошие навыки пользователя ПК и обязательно очень качественное владение иностранным языком. Также неплохо понимать операционные системы, желательно иметь опыт использования разных ОС, понимать командную строку.

Если говорить о технологиях, то было бы неплохо иметь знания по базам данных, языку SQL, понимать XML, иметь представление о UML.

5. Что лучше: изучать интересующие технологии самостоятельно (книги, интернет) или записаться на тренинг или к репетитору?

Евгений Пешкур:

Идеально сочетать оба способа. Суть IT’шника – постоянное САМОразвитие. В начале пути посещение тренинга или репетитора сэкономит массу времени, укажет правильный путь и сделает нужные акценты. Ну и в личной работе скорректирует именно ваши отклонения от курса. Но не надо заблуждаться – самостоятельное изучение первично. «Я бы в … пошел, пусть меня научат» – это в корне неверный подход. «Пойду учиться, пусть мне помогут» – вот так надо.

Александр Барановский:

Оптимальный вариант – совместить приятное с полезным:). Книги расширяют кругозор и дают точку зрения на проблему/технологию. Тренинги позволяют закрепить знания на практике под присмотром тренера.

Светлана Захаренко:

В данном вопросе я бы не отделяла одно от другого, чтение большого числа книг/форумов/статей не принесёт пользы без чётко заданной траектории. Правильно направить, подсказать наиболее удачные источники информации сможет тренер либо специалист, имеющий большой практический опыт в выбранной области. С другой стороны, посещение тренинга без изучения дополнительной литературы тоже не принесёт должного результата. Ещё все очень зависит от того, как человек привык усваивать материал: в группе студентов, в одиночестве и с книгой либо один на один с преподавателем. Возможна комбинация обучения по книгам, с преподавателем и группой студентов:).

6. Какие тренинги в сфере информационных технологий сегодня пользуются популярностью среди студентов (по технологиям и местам проведения)?

Александр Барановский:

Популярны как и давно существующие «Введение в функциональное тестирование», Java, .NET, так и новые области – Mobile Development, BI.

Святослав Куликов:

Самыми популярными направлениями тренингов EPAM в Минске являются Java, .NET, тестирование – обучение по этим направлениям проводится, в основном, на базе БГУ, БГУИР, БНТУ. С перечнем направлений подготовки, осуществляемой тренинговым центром ЕРАМ на базе ведущих вузов РБ, вы всегда можете ознакомиться на нашем сайте . Стоит особо подчеркнуть, что мы проводим подготовку не только программистов и тестировщиков. Следите за открывающимися наборами на тренинги.

Часто можно услышать вопрос о том, куда лучше пойти – в тренинговый центр той или иной IT-компании или в независимый (коммерческий) тренинговый центр. Ответ прост: любая IT-компания, проводя бесплатный для слушателей тренинг, хочет видеть их в числе своих будущих сотрудников. Потому такие тренинги максимально адаптированы к бизнес-процессам конкретной компании и идти на них лучше в том случае, если вы хотите работать в этой компании. Коммерческие же тренинговые центры предоставляют, как правило, более «универсальную» подготовку, но поскольку невозможно за разумное время «научить всему», при таком подходе могут быть упущены моменты, важные для трудоустройства в конкретную IT-компанию. Это не вина тренинговых центров, это объективная реальность. Итого: в «фирменных» центрах – «уже, но глубже», в коммерческих – «шире, но мельче». К слову, можно совместить оба подхода:).

7. Какие сайты, форумы и сообщества стоит посещать, чтобы быть в курсе последних событий в IT -сфере?

Святослав Куликов:



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: