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


Содержание

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

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

Язык программирования для разработчика – это его инструмент, а от правильного выбора рабочего инструмента в любой сфере деятельности будет зависеть и качество результата, и уровень заработка, и карьерный рост.

Прежде всего, стоит подумать о балансе между реальными преимуществами от изучения языка и тем, сколько времени и усилий придется потратить на обучение. Оцените перспективы вашего выбора. Например, в начале нулевых большие надежды возлагались на Ruby on Rails , не менее перспективным считался PHP . Но рынок развивается непредсказуемо, и сейчас, спустя буквально пару лет, стало выгодно изучать совершенно другие языки.

1. JavaScript

Исследование системы Stack Overflow 2020 года показало, что более 71% разработчиков называют JS самым востребованным языком программирования. А ведь только за три года до этого данный показатель не превышал 54,5% .

Сегодня JavaScript применяется повсюду. С помощью JS-фреймворков ( Vue , Angular и React ) создаются веб-приложения. Вне браузера посредством Node.js lets пишутся серверные приложения (тем же языком, которым вы составляете клиентский код). Платформа Node позволяет конструировать веб-сервисы, регулировать Internet of Things и проводить эксперименты с искусственным интеллектом.

Ключевое преимущество JS заключается в широкой поддержке, которую этому языку в сфере ПО оказывают такие влиятельные корпорации, как Google, Facebook, Microsoft, Google, Amazon и Facebook. Еще одно важное достоинство JavaScript – это доступность и широкий ассортимент учебных материалов, курсов, веб-ресурсов, справочников, видеоуроков и специализированных блогов.

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

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

Большой курс по этому языку можете посмотреть на нашем сайте :

2. Python

По результатам опроса той же Stack Overflow, 37,9% разработчиков регулярно пользуются Python. Этот язык программирования отличился тем, что в течение последних 5-ти лет его популярность росла намного стремительнее, чем у конкурентов. Упоминания о нем даже появились на страницах британского издания The Economist, хотя ранее журнал никогда не проявлял интерес к теме разработки программного обеспечения.

В чем секрет популярности Python? Ответ кроется в простых правилах оформления: здесь код писать легче, чем в остальных языках, хотя бы потому, что не нужно прописывать знак «;» после каждого оператора.

Python стали намного чаще преподавать в ВУЗах и школах. Постепенно он влился и в академическую среду. Пожалуй, это самый известный язык программирования общего назначения: его используют и для обучения ИИ, и в даталогии. Благодаря активному применению Python недавно было предложено объединить его с языком R.

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

Большой курс по этому языку можете посмотреть на нашем сайте :

3. Java

Заслуженное третье место с 45,5% голосов разработчиков. Главным преимуществом этого языка программирования является JVM. С помощью виртуальной машины можно запустить любой из языков на всех аппаратных платформах и типах устройств.

Таким образом, Java сильно упрощает работу программистам, вот почему он так популярен среди крупных компаний. К тому же Java используется при создании нативных мобильных приложений для ОС Android – неоспоримого лидера современного рынка. А это еще одна веская причина для его изучения.

Действительно, JVM применяется все активнее: и для разработки новых языков, и для адаптации уже существующих. Но как раз из-за универсальности Java соискателям бывает сложно сориентироваться на собеседованиях.

Если вы претендуете на должность разработчика корпоративных приложений, первым делом продемонстрируйте знания инфраструктуры языка, понимание виртуальной машины JVM и JRE, а также комплекта JDK. В случае с Android-программами акцент стоит сделать на наборе SDK, эмуляции и развертывании. Навык работы с JVM тут также даст преимущество.

Большой курс по этому языку можете посмотреть на нашем сайте :

Поклонниками Microsoft C # по данным Stack Overflow в 2020 году были 35,5% от общего количества опрошенных разработчиков. И хотя Java во всех рейтингах все еще находится впереди C #, по прогнозам экспертов совсем скоро ситуация изменится.

Дело в том, что Java относительно долго обновляет свой функционал, тогда как Microsoft активно развивает и совершенствует C #. Так компания пытается справиться с зависимостью от Windows. С этой же целью была куплена Xamarin, выпущена платформа .NET и продолжаются инвестиции в Azure. Представители Microsoft, строя новую стратегию развития, сделали ставку на C # и теперь прилагают колоссальные усилия, дабы язык был совместим не только с технологиями компании, но и с открытыми стандартами.

Экосистема C # своими масштабами похожа на Java: она такая же огромная. Поэтому перед интервьюированием нужно обязательно выяснить позицию потенциального работодателя на рынке. Вы должны хорошо разбираться в Microsoft.NET Framework и среде CLR. А если компания пользуется несколькими языками CLR, то стоит изучить каждый из них.

Большой курс по этому языку можете посмотреть на нашем сайте :

5. C, C++

Несмотря на различные модели программирования, эти языки тесно связаны между собой. Первый, Си, уже не применяется для создания приложений, интерфейсов пользователя и ML – его вытеснили другие, описанные выше языки. Однако С все еще используется в ОС и встроенных системах. Яркий пример – всем известная Linux, ядро которой написано на Си.

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

C++ представляет собой более продвинутую современную версию С. Когда при разработке приложений на первое место выходит производительность, для написания выбирают именно С++. Финансовые компании предпочитают использовать этот язык в своих внутренних системах. А высокая скорость С++ позволила ему завоевать сегмент разработки графических приложений: игр, VR и AR, графических движков.

Если вы хотите получить работу с С или объектно-ориентированным С++, на собеседовании ждите вопросов о данных, объектах, классах, операторах, списках, указателях, свойствах, циклах, методах и т. п.

Большой курс по этому языку можете посмотреть на нашем сайте :

Достойны упоминания

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

Внимание разработчиков удалось привлечь Apple Swift – новой альтернативе Objective-C. На нем создаются приложения для Mac OS и iOS. Надеясь, что Swift через какое-то время станет серверным, компания Apple наделила его свободной лицензией (open source software), но пока надежды корпорации так и не оправдались.

По-прежнему не сдает позиций PHP . Имеющиеся ограничения и альтернативы не помешали этому языку удержаться на плаву в Wikipedia. Facebook тоже использует PHP, более того, компания занялась его модернизацией и выпустила версию Hack. Популярная платформа WordPress и движок MediaWiki на PHP создают свои плагины.

В сфере системного программирования хорошими перспективами отличаются языки от Google и Mozilla: Go и Rust соответственно. Они ориентированы на разработку высококонкурентных систем.

Что касается функционального программирования, упор нужно сделать на Erlang. Хорошо будет знать и его конкурента Elixir, а также диалект Lisp, действующий на JVM. Благодаря большому количеству востребованных функций заслуживает внимания и F#.

А если вас привлекает быстро развивающаяся область Smart-контактов и цифровая валюта Ethereum, приступайте к изучению Solidity.

В заключение: как сделать правильный выбор языка программирования?

Мы ознакомились с пятью рекомендованными к изучению языками. Но как из них выбрать один подходящий? Учитывая современные тенденции, лучше не проходить мимо JavaScript, потому что это самый универсальный и распространенный язык на сегодняшний день. Он совместим с большинством устройств, позволяет создавать клиентские, бессерверные и веб-приложения. JS за последнее десятилетие сильно трансформировался и приблизился к С # и Лисп. Конечно, у него есть свои недостатки, но они менее заметны, чем раньше.

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

Первая предпосылка заключается в том, что стандарт Wasm дает возможность создавать браузерные приложения на всех высокоуровневых языках. А вторая – что если популярность голосовых интерфейсов возрастет, графические уйдут на задний план. Python в этом плане имеет превосходство: он лежит в основе виртуального акустического ассистента Amazon Echo.

Хороши для развития карьеры и Java с C#. Какой из них выбрать зависит исключительно от ваших вкусовых предпочтений или требований работодателя, поскольку синтаксис, экосистема, инфраструктура, процедуры и функции в них похожи. С одной стороны, Java старше и востребованнее, чем C#. Но благодаря технической поддержке и намерению Microsoft наделить C # кроссплатформенностью, со временем именно он может стать лучшим инструментом для программирования. Java все еще является языком Android, но благодаря Xamarin и на C # можно создавать приложения для мобильных ОС.

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

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

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

Как научится программированию с нуля или советы для «Чайников»

Программировать — это просто.

Начать программировать и запрограммировать какие-то вещи, — это достаточно просто. Для этого не надо быть профессионалом.

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

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

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

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

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

Хотите научится программировать но здесь стоит вопрос «как?» то для вас у меня есть пара очень простых ответов на них

1.Книги — основной источник материала для новичка в любой сфере деятельности, конечно можно легче спросить у знакомого программиста «что это» и «как это» но не у всех они есть так что придется полюбить и это дело.

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

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

Зачем уметь программировать? У каждого «зачем» может быть свое. Но без «зачем» все остальное просто бесполезно. Хорошее «зачем» это если вам интересно и хочется научиться, еще лучшее «зачем» — если нужно решить какую-то конкретную задачу.

Вы хотите начать программировать. Вы уже что-то сделали. Как минимум, вы читаете этот текст. Многие люди просто хотят научиться, и ничего с этим не делают. Но Вы уже сделали несколько шагов на пути к умению программировать.

У вас есть желание, и я надеюсь, что у вас есть и «зачем». То есть я надеюсь, что вы знаете зачем вам уметь программировать. Потому что без «зачем», дальше идти будет сложно

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

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

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

Очень хороший инструмент программиста — это поиск в интернете. Я использую Google И если я не знаю как мне сделать конкретную вещь, то обычно за 1-2 запроса в гугле, я нахожу как это сделать и пробую все это применить.

И если вы выбрали для себя ЯП Python то я советую вам почитать книгу Майкла Доусона «Программируем на Питоне» это очень хорошая книга для «Чайников».

Обучение программированию с нуля: с чего начать изучение в домашних условиях

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

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

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

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

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

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

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

Особенности обучения программированию на постсоветском пространстве

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Цукерберг рекомендует:  Секундомер - Помогите написать Секундомер.

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

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

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

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

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

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

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

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

Как правильно изучать программирование: метод Франклина

Итак, вы хотите освоить интересную профессию, погрузиться в мир цифровых технологий и получить высокооплачиваемую работу, востребованную в любой стране мира. С чего начать?

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

В XXI веке обществу нужны работники информационных технологий (IT): инженеры, дизайнеры и программисты. Кто такой программист? Это профессионал, который всегда открыт новым знаниям и готов принять быстро меняющийся мир. Сегодня это самая перспективная профессия. С такой профессией вы всегда заработаете на хлеб с маслом в любой стране мира.

Языки программирования универсальны, так что работать вы сможете где угодно: или в родной России, или в теплой Калифорнии, куда уезжают самые талантливые ребята. Если вы не попали в топ мирового рейтинга — не беда. Рядовой программист может эмигрировать в Новую Зеландию, Германию, северные штаты вроде Иллинойса или Миннесоты. Выбирайте сами, в какую страну уехать жить и работать. Или остаться на родине. Кому-то больше нравится быть первым парнем на деревне, чем последним в городе (к тому же низкий социальный статус негативно отражается на состоянии иммунной системы). Когда у вас достаточно денег, то можно и здесь прилично жить.

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

Талант программиста можно заметить в человеке, который не написал ни строчки кода. Это человек, который любит головоломки. Он любит обдумывать задачки, словно это сладкое мороженое, от которого невозможно оторваться. Каждая флуктуация нелогичности в окружающем мире — новый вызов для него. Всё нужно упростить, упорядочить и алгоритмизировать. Какими качествами должен обладать математик, описано в первых главах книги «Прелюдия к математике» У.У. Сойера. Многое из этого нужно, чтобы стать программистом.

Самообучение

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

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

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

Я самостоятельно выучила 4 языка и поделюсь секретами, которые помогли мне в этом

Ребята, мы вкладываем душу в AdMe.ru. Cпасибо за то,
что открываете эту красоту. Спасибо за вдохновение и мурашки.
Присоединяйтесь к нам в Facebook и ВКонтакте

Всем привет! Меня зовут Кристина, и я самостоятельно выучила 4 языка: белорусский, польский, английский и немецкий. Я веду свой блог kryscina.com о работе и жизни за границей. Благодаря знанию иностранных языков после 8 лет работы в журналистике я самостоятельно освоила профессию бизнес-аналитика. Без знакомств, после 20 собеседований нашла работу в Варшаве. После 8 месяцев изучения немецкого нашла работу в Мюнхене за 17 дней. Сейчас я живу в Регенсбурге (Германия) и воспитываю сына.

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

С чего начать

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

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

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

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

1. Смотрите

Здесь вам на помощь придут множество сервисов: YouTube, онлайн-телевидение и онлайн-медиатеки. Рекомендую смотреть как каналы для изучения языка (например, для изучения английского хороши English with Lucy, engVid, ETJ English, EnglishLessons4U), так и включать ролики блогеров, которые будут рассказывать вам о каких-то простых и повседневных вещах, например как они наводят уборку в своем доме или о том, что они готовят на неделю. В таком случае усвоение будет происходить «фоном» и вы начнете привыкать к языку.

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

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

2. Читайте

Мой фаворит — чтение с помощью читалки Kindle. Если вы учите английский, на Kindle можно скачать англо-русский словарь и тут же подсматривать перевод. Для продвинутых пользователей я рекомендую англо-английский: достаточно нажать на непонятное слово — и появится подсказка с описанием слова из словаря или статья из «Википедии». Для любителей бумажных изданий советую простые журналы вроде кулинарных, комиксы или художественные книги для подростков.

Мое недавнее открытие — сервис Blinkist, который объединяет в себе «читать» и «слушать». Здесь собраны нон-фикшен-книги в сокращенном формате на английском, которые можно также слушать в аудиоформате, параллельно подсматривая в текст. Некоторые книги хочется купить сразу после прослушивания, а на некоторые больше не хочется тратить и минуты — получаются этакие «трейлеры» интересующих книг с пользой для словарного запаса.

3. Слушайте

Необязательно слушать скучные образовательные упражнения. Кому понравятся бесконечные повторения одних и тех же фраз? Найдите для себя радиостанцию по душе или выберите подкаст на интересующую тему. Важно, чтобы тема вам действительно нравилась. Вас интересует мода? А может быть, психология? Найдите об этом подкаст, например через библиотеку iTunes, Spotify или Apple Music. Подкасты удобны тем, что их можно слушать, не напрягаясь, где угодно и когда угодно: во время пробежки, в метро или даже за приготовлением обеда.

И музыка! Конечно же, музыка. Слушайте одну и ту же песню по 20 раз, пока не выучите слова. Напевайте их в машине по дороге на работу. Я использую Spotify на телефоне + Musixmatch с синхронным текстом проигрываемых песен. За компьютером удобнее установить расширение Google Translate в браузере: открываем текст песни, кликаем дважды на каждое непонятное слово — профит. Новые слова можно выписывать — получится комбо для расширения словарного запаса.

4. Играйте

Если вам важна игровая составляющая, вам на помощь придут множество полезных мобильных приложений. Нельзя не упомянуть Lingualeo — с удовольствием использую этот сервис, там можно и читать тексты, и учить новые слова. Мне нравятся и всем известные Duolingo и Busuu. Приложений масса, но самое главное — это регулярность.

Для более продвинутого уровня хороши Elevate и Peak: здесь можно тренировать скорочтение, расширить словарь синонимов и т. д.

5. Пишите

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

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

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

6. Говорите, говорите и еще раз говорите

Мои лучшие учителя — дети друзей из Германии: Марлина и Люка с их подружкой Юли.

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

Здорово, если у вас появляется возможность общаться с местными жителями во время путешествий. Лучший для этого способ, конечно, снять жилье через Couchsurfing и Airbnb.

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

И немного из личного опыта: я решила ввести английский язык для своего ребенка в качестве родного, об этом я подробнее пишу в своем блоге. Мы живем в Германии, муж говорит с малышом по-немецки, а я — по-английски. Мы выбрали такой путь, имея на это собственные причины, и, конечно, я не хочу советовать такой метод всем. Но каждый день я замечаю, что ребенок — лучшая мотивация сделать свою собственную речь идеальной и дотянуть свои знания до native speaker. Дети гораздо быстрее запоминают новую информацию, и, быть может, когда вы достигнете определенных успехов в изучении языка, вам будет интересно обучать ему своих малышей и всегда узнавать что-то новое.

А что вам помогает в изучении иностранных языков?

Программирование для новичков | Топ 5 интересных языков

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

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

Сложно ли программирование, и с какого языка начать?

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

Связан этот феномен с особенностями транслитерации, которая заключается в наличии дополнительной ступени (байт-кодов) на пути передачи данных машине. Если говорить более точно, то данные передаются не напрямую, а через посредника, которым в данном случае выступает JVM(Java Virtual Machine).

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

Теперь возникает вполне резонный вопрос — а сложно ли изучать эту самую джаву? И перед тем, как ответить, стоит напомнить, что Java — это объектно-ориентированный язык программирования. Надо понимать, что изучение ООП-языков потребует понимания их принципов построения. Но не все так плохо, ведь Java значительно проще, чем тот же C++(речь о котором, кстати, пойдет далее), поэтому если он вам близок и интересен, то вы можете уже подыскивать подходящие курсы, обучающие статьи или онлайн-сервисы. А пока вы не ушли далеко, мы позволим себе посоветовать вам онлайн-сервис для изучения Java — Skillbox. Данный проект не только позволит вам в кратчайшие сроки изучить данный язык, но и поможет в дальнейшем трудоустройстве. В общем-то, это лишь один из многих, в интернете вы можете найти и другие онлайн-курсы.

Python

Наверняка вы уже слышали об этом языке программирования, т.к именно он чаще всего является фигурантом споров аля «Язык1 vs Язык2», «Какой язык программирования самый лучший» и т.д. В принципе, это вполне оправдано, ведь несмотря на свою кажущуюся простоту, Python может применяться в самых разнообразных ситуациях, начиная от Веб-разработки, и заканчивая применением в научных исследованиях.

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

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

JavaScript

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

В отличие от своего «собрата» по названию, JavaScript используется только в веб-разработке, и только в качестве исполняемых скриптов. Т.е его код не нужно компилировать, он используется в исходном виде. Стоит обратить внимание на тот факт, что JS является обязательным языком, если вы решите серьезно заниматься веб-разработкой. Без него будет сложно, а может и вовсе невозможно.

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

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

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

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

В отличие от всех предыдущих, эти два языка программирования являются по-настоящему легендарными. Спектр их применения настолько широк, что легче сказать, где они не используются.

Конечно, в современных реалиях мы чаще слышим именно о C++, нежели о его прародителе. Однако положил начало «всему» именно чистый C, и именно с него стоит начать изучать программирование, если вы вдруг метите на C++ разработчика. Почему так? А потому, что изучая C++ сходу, вы рискуете запутаться во всех этих методах, так и не поняв суть ООП. Другое дело C, с помощью которого вы сможете понять азы и подноготную программирования. Кстати говоря, он достаточно прост к изучению, поэтому вам не придется тратить долгие месяца и годы на его освоение.

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

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

Полезная литература

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

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

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

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

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

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

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

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

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

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


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

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

Цукерберг рекомендует:  Вакансии TYME

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

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

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

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

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

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

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

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

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

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

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

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

Обучение программированию с нуля – пошаговое руководство для начинающих. Десять шагов от чайника к программисту-профессионалу

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

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

Шаг первый. Подготовка

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

Они представляют данное ремесло как что-то романтическое, динамичное – прямо какой-то постоянный экшн.

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

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

Яркий пример тому – фильм «Социальная сеть», в котором вообще не показывали, как главные герои занимаются кодами.

Рис. 1. Кадры из фильма «Социальная сеть» (2010)

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

Рис. 2. Постер к фильму «Кадры» (2013)

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

Вот вам правда о рассматриваемом ремесле – программирование это:

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

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

Шаг второй. Выбор первого языка

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

Согласно рейтингу журнала IEEE Spectrum наиболее популярными на сегодняшний день являются такие языки, как C, Java и Python. Ниже представлена первая десятка данного рейтинга.

Рис. 3. Рейтинг языков по версии IEEE Spectrum

Вообще, С – это один из самых простых языков, который дает основу всему остальному. Более того, его элементы используются во многих других системах и программах.

Но интересно, что в хороших учебных заведениях, а также на курсах студенты изучают языки в таком порядке:

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

  1. Веб (разработка сайтов, онлайн систем и все, что с этим связано) – html (хотя его нельзя назвать полноценным языком программирования), PHP, Perl, Python, Ruby, Java, Groovy, а также технология ASP.NET.
  2. Пользовательское ПО (всевозможные программы вроде справочников, браузеров, мессенджеров и тому подобное) – Delphi, C, C++, C#.
  3. Пользовательское ПО для мобильных устройств – Java, Objective-C.
  4. Машинные разработки (работы с микропроцессорами и другими устройствами, проектирование робототехники) – Assembler, модификации С.

Кто-то также может внести в этот список так называемое программирование 1С. Не верьте профанам и ничего не знающим людям! Это совсем не программирование.

Когда вы познакомитесь с основами рассматриваемой работы, то поймете, почему так можно говорить.

Выбирайте то, что вам больше всего понравится.

Большинство специалистов также советуют начать свое обучение с Pascal. Такой вариант позволит

Вам написать самые простые программки и иметь общее представление о рассматриваемом ремесле в целом.

Можно сказать, что Паскаль – это некий мост. Человек, который просто хорошо знает математику, может перейти через него в мир программирования.

Какие языки программирования самые простые для изучения

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

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

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

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

0beron / Shutterstock.com

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

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

  • Basic
  • Pascal

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

Но многие специалисты убеждены в том, что для познания языка программирования не следует сразу переходить к его визуальной реализации. Проще говоря, если хотите изучать Паскаль, то изучайте именно его, а не Delphi, изучайте Си вместо VC++ with MFC/QT и так далее.

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

Не подвластны времени

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

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

Совет новичкам

В итоге, остается посоветовать новичкам изучать программирование с версий для DOS такие как Pascal и лишь потом купить Delphi, чтобы перейти в комфортные визуальные среды.

Войти в ай-ти: начинаем с нуля или свитчеры

Эта статья, которой Владимир Кожаев начал серию с советами новичкам. Обязательной частью в ней будут две статьи, но если весь материал охватить не удастся, он обещал добавить ещё.

Откуда дровишки?

Ах, вы думали? Вы, значит, иногда думаете? Вы мыслитель. Как ваша фамилия, мыслитель?
Спиноза? Жан Жак Руссо? Марк Аврелий?
© Золотой телёнок

Я в отрасли с 2005, и за это время перед глазами у меня прошло много историй и судеб. Но это не главное, дело в том, что большинство юных (и не очень) неофитов, которым я помогал успешно работают, некоторые уже на второй-третьей работе. Но и это не главное. Очень ценно, что у меня есть примеры тех, у кого не получилось. Ценно потому, что иногда знать, что делать гораздо менее важно, чем знать чего и как не делать. Как и все обобщения, нижесказанное справедливо лишь для условий Украины и в меньшей степени для стран бывшего СНГ. Об условиях работы в США я знаю мало, поэтому желающие эмигрировать поищите другой источник информации (например, замечательный подкаст «Америчка» Якова Файна, либо « SiliconValleyVoice » Михаила Портнова).

Социально-психологический портрет свитчера

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

Кто же хочет в ай-ти. Понятно: студенты профильных вузов и свитчеры (слово-то какое, понимающие в курсе) из других специальностей. У тех и других проблема, кусающая себя за хвост, как вечный змей-Уроборос, — нет коммерческого опыта. Без опыта на работу не берут, без работы опыта не получить. Тем не менее, образование даёт много преимуществ, поэтому проблемы, стоящие перед теми, у кого его нет, заслуживают отдельного разговора.

Жил-был человек, работал на далёкой от ай-ти работе, возможно добился успеха, но вот случился кризис 2008-го года, жить стало тяжелей. Потом произошёл майдан 2013-го, аннексия Крыма, война на Донбассе, доллар рванул вверх и жить стало совсем тяжело. И вдруг наш герой вспоминает, что в институте (школе/детском саду) он неплохо программировал на Паскале (получил пять на экзамене/успешно ответил на вопрос/умел включать компьютер). «Эврика, пойду я в ай-ти, там много платят и работа интересная».

Если студент-программист не имеет опыта и стоит задача всего лишь (!) его получить, свитчеру до этого семь вёрст и всё лесом: нужно определить, чем заниматься, и получить знания. Дело, сразу скажу, нелёгкое, поэтому людей справедливо одолевают сомнения: получится ли у меня, стоит ли овчинка выделки, а может ну его нафиг? С этого и начнём.

Получится ли у меня?

Судьба — очень удобное слово для тех, кто никогда не принимает решений!
© Джоди Фостер

Когда-то давно, когда программист с опытом зарабатывал меньше секретарши из постсоветского НИИ, программирование было уделом задротов в растянутых свитерах. Тренд «войти в ай-ти» соответственно отсутствовал. Но мало-помалу в страну пришёл аутсорсинг. Заработки у основателей ай-ти контор были запредельными: низкие украинские зарплаты сочетались с бросовым, но всё же внешним рейтом. К примеру, в 2004-м году программисту за час работы платили 2 доллара, а продавали этот час за 15. Поэтому в программисты стали брать всех, кто в состоянии написать программу «привет мир», в тестеры — умеющих включить компьютер. Более чем шестикратная разница внутреннего и внешнего рейтов покрывала любые издержки. Продолжалось это благословенное время примерно до 2008-го года. Желающих войти в ай-ти из других специальностей было мало, потому что заработок программиста хоть и вырос, до установщика кондиционеров, увы, не дотягивал.

В 2008 грянул кризис, увольняли всех, в том числе программистов, но меньше других и брали на другую работу. Кто-то (как автор) после сокращения устроился практически сразу. Кто-то через месяц-два, но и в кризис работники клавиатуры были сыты и даже довольно упитаны. Плюс ко всему курс подрос и наконец-то программисты стали зарабатывать серьёзно побольше даже самых грудастых девочек из автосалонов. Соответственно поток желающих и как следствие требования к ним тоже стали расти, и рост этот продолжается до сегодняшнего дня. Причём, если в 2008-м году для успешного трудоустройства надо было иметь теоретические знания, сейчас от начинающего требуют наличия какого-никакого опыта. То есть, чтобы попасть на работу программисту надо иметь опыт написания реальных программ, хотя бы небольших и некоммерческих. Тестеру — подтвержденный опыт тестирования приложений.

Так что видим: требования возросли на порядок. Что из этого следует: учиться, учиться и ещё раз учиться! Каждый день, по три-четыре часа, минимум год. После этого нужно нарабатывать опыт, бесплатно писать программы. Так что от начала обучения до трудоустройства пройдёт в лучшем случае два года. Есть у вас возможность и мотивация два года после работы упорно трудиться (фактически, по полдня)? Если есть, хорошо, но у меня для вас сюрприз: никто не гарантирует, что на первой работе вы продержитесь больше недели! Джуниор, тем более стажёр, — самые уязвимые позиции.

Ещё одна важная штука — английский. Заказчики в Украине сплошь иностранные, внутренний рынок мёртв. Как вы думаете, будут они учить русский/украинский ради талантливого, но пока мало чего умеющего стажёра? У кого английский есть, тому, конечно, легче. У кого нет — учимся. А как вы хотели?

Отсюда следует настораживающий вывод:

Для устройства на первую работу нужно быть готовым к годам упорного труда и финансовой нестабильности в первое время.

Хорошо взвесьте, можете ли вы себе это позволить?

Чтобы не сойти с ума, учёба должна стать вашим хобби.

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

Шлём демотиваторов подальше

Найдутся некоторые, что скажут: «фи, он пошёл программировать не по зову сердца, а потому что есть захотел» Или: «стар уже — куда тебе учиться?» Или: «это не для твоих мозгов» — смело посылайте их. В отдельно запущенных случаях непрошеных советчиков можно даже побить. Почему? Так подбитый глаз успокаивается куда быстрее пустого желудка! Ещё потому, что советчики эти не хотят на самом деле вам помочь — лишь почесать о вас чувство собственной важности, попутно толкнув в лужу. Не иметь денег, отказывать в необходимом не только себе, но и близким, прозябать будучи способным на большее — это пошло, мерзко и противно.

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

С чего начать, или выбор пути

У меня растут года,
будет и семнадцать.
Где работать мне тогда,
чем заниматься?
© Маяковский

Ну вот, с мотивацией разобрались: что делаем дальше?

  • Во-первых, учим английский, прямо сейчас! Как писал ранее, без него в ай-ти, увы, делать нечего!
  • Во-вторых, давайте выберем, за что нам будут платить приятные взгляду зелёные бумажки. Нужно что-то такое, чтобы освоить достаточно быстро, но и платили за это хорошо. Первое, что приходит на ум — ручное тестирование. Специальных знаний для начала вроде бы не надо, из общих качеств только внимательность да усидчивость. Специфике тестируемых программ обучусь по ходу. Пойду на курсы, закончу и буду работу искать. Увы, не с одним новичком сыграл злую шутку чрезмерно низкий порог вхождения. Дело в том, что на одну вакансию джуниор тестера до недавнего времени приходило до тысячи (!) резюме. Почему до недавнего? Да потому, что появляться в свободном доступе такие вакансии перестали! Компании предпочитают брать тестеров с профильным образованием и после собственных курсов. Да и просто вакансий QA начального уровня на два порядка меньше количества соискателей.

И вот ещё один совет: не ломитесь в ручные тестеры!

При этом становиться программистом вовсе не обязательно.

Некоторым достаточно просто сменить отрасль, опираясь на предыдущие навыки. Например, вместо бухгалтера в фирме по производству колбасы стать таким же в программерской конторе. Если умеете работать с людьми (официанты, бортпроводники, хостессы) — прямая дорога в офис-менеджеры. Были начальником — идите в менеджеры, психологом — в рекрутеры и эйчары. Но что делать, если вы таки да хотите стать программистом? Становиться, что же ещё! Но что изучать, вот вопрос? Ответ на него в следующем пункте.

Что и как учить, чтобы стать программистом

Детей надо учить тому, что пригодится им, когда они вырастут
© Аристипп

Что же изучать, чтобы быстрее получить долгожданную работу: Java, C#, а может С++? Да, эти языки, конечно, востребованы и хорошо оплачиваются, но есть две проблемы.

Проблема первая: любой язык существует не сам по себе, но вместе с инструментальными средствами: компиляторами или интерпретаторами, которых может быть несколько, библиотеками и каркасами (по-английски framework) и типичными подходами, применяемыми в рамках предметной области. Так вот, дело в том, что для указанных языков любая из возможных специализаций (возможно, кроме android) предполагает высокий порог вхождения. Другими словами, учиться вам придется особенно долго. Именно поэтому для переквалифицирующихся я рекомендую специализации с низким временем входа: это прежде всего программирование фронтенда с помощью языка JavaScript и родственных, потом разработка сайтов на языке PHP или Python, далее разработка мобильных приложений под Android или iOS. А вот в разработку энтерпрайз приложений на платформе JavaEE или .NET, тем более в системное программирование, бигдату или анализ данных свитчерам лучше не лезть. Слишком долго придётся учиться.

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

Пусть достаточно простые, но если человек не может перевернуть строку или написать сортировку пузырьком, работать на реальном проекте ему будет сложно.

Отсюда ещё один совет: технике программирования нужно обучаться — задачки решать.

Как же учиться

Первым делом нужно выучить сам язык, его синтаксис. Для этого берём книжку по любому из выбранных языков, читаем её и обязательно делаем упражнения. Потом приступаем к изучению общеупотребительных библиотек, параллельно решаем алгоритмические задачки: массивы, строки и так далее. После того, как язык и минимальный объём алгоритмов более-менее освоен, приступаем к изучению общеупотребительных для данного языка библиотек и каркасов (фреймворков). Дело в том, что начальные познания о сокетах, вебсервисах, библиотеках для юнит-тестирования, HTTP запросах являются обязательными для любого программиста, вне зависимости от специализации.

Следующим шагом будет изучение шаблонов проектирования. После этого переходим к освоению систем контроля версий и баз данных, например MySQL. И наконец переходим к освоению желаемой специализации. Но и это ещё не всё: по окончанию обучения необходимо создать несколько работающих проектов и выложить их на github и обязательно куда-нибудь на стор или сервер, чтобы люди могли лицезреть не только код, но и результаты вашего труда.

Только после этого можно начинать поиск работы.

Список литературы для специализации программиста на Java под Android

  • Для первоначального знакомства с языком я рекомендую книгу Якова Файна «Программирование на Java для детей, родителей, дедушек и бабушек».
  • После того, как книга прочитана, можно переходить к книге Брюса Эккеля «Философия Java». Только не берите русскоязычный вариант в мягкой обложке — он сокращённый, там упражнений нет.
  • Найдите либо более новое издание, либо английское под названием «Thinking in java». Задачки по программированию тупо гуглим по вопросу «алгоритмические задачи для собеседований».

Далее, берём две книги:

  • Либо книга дядюшки Якова «Java Programming 24-Hour Trainer» либо книга Эккеля «Thinking in java enterprise».
  • Для освоения шаблонов проектирования берём книгу Эккеля же «Thinking java in patterns».

Чтобы освоить MySQL и git можно воспользоваться просто официальной документацией. После этого можно уже приступать к изучению собственно Android, например, по книге «Android Разработка приложений для чайников» Донн Фелкер. После этого я рекомендую написать две-три игры, выложить их на стор. Дальше можно искать работу.

Ментор, как найти и не надоесть

Часто у новичка возникают вопросы, которые он сам разрешить не в состоянии. Хорошо бы спросить у кого-то, кто понимает, но где его взять? Обращайтесь к тем, кто пишет статьи, ведёт блоги (p.s. к автору обращаться НЕ надо, я уже и так помогаю нескольким, а время не резиновое). Почему к ним? Просто, если человек даёт советы по собственной инициативе, скорее всего, он согласится помочь, когда его просят. Кроме того, ментор должен обладать навыками учителя, в какой-то степени гуру, не все даже супер-пупер-дупер синьоры их имеют.

Цукерберг рекомендует:  Unity - Unity совместная разработка

Задавать вопросы нужно в таком порядке:

  1. В начале пытаемся найти решение сами.
  2. Если не получается, идём гуглить.
  3. Если и после этого не получается, задаём вопрос на Stackowerflow или на другом форуме, но лучше на нескольких сразу. Задав вопрос, читаем его, возможно, прочитав, поймёте, как решить проблему.
  4. И только, если пункты 1-3 не дали эффекта, обращаемся к ментору.

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

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

Что ещё надо? Если ты спрашиваешь ментора, и он даёт совет, воспользуйся им! Если не пользуешься, не ной, что ничего не выходит. У меня есть знакомая, которая приблизительно раз в месяц спрашивает: «что же мне делать?». Я ей рассказываю, подробно, она приходит через месяц, не выполнив из моих рекомендаций ровно ничего! Цикл повторяется вновь. Стоит ли говорить, что результаты её печальны?

Курсы, могут ли они помочь

Это, смотря, чего вы от них ждёте. Если введения в специальность, однозначно — да. Хорошие курсы вам в этом помогут. Но, подчёркиваю, хорошие. Как же их найти? Давайте подумаем: сколько программист способный вести курсы получает в час? Правильно, от 20-ти долларов, скорее выше. Положим, в группе 10 человек. Два раза в неделю лекции + практические задания, на проверку которых тоже тратится время. То есть в неделю преподаватель должен потратить на ваше обучение минимум 15 часов, скорее 20-ть (к лекциям ведь готовиться надо) 20*20=400 баксов — минимальная зарплата лектора. Добавляем к ней ещё хотя бы 200 (аренда помещения, расходные материалы, прибыль конторы). В месяце четыре недели с хвостиком. То есть стоимость месяца хороших курсов для группы из 10-ти человек должна стоить 600*4+ хвостик(200)=2600 долларов. Делим на 10 и получаем 260 долларов на одного человека в месяц. По нынешнему курсу в тридцать баксов это будет 7800 гривен. Понятно?

Могут ли хорошие курсы быть дешевле? Да, если проверка домашних заданий автоматизирована (как на курсере) и слушателей много — тогда получится взять объёмом. Или, если основная цель курсов не заработок денег, а пиар. Я могу порекомендовать курсы Якова Файна или те, что проводятся владельцами сайта javascript.ru.

Но зарубите себе на носу: ни одни курсы не дадут вам всех знаний. Ещё одна замануха — обещание стопроцентного трудоустройства.

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

Как устроиться на первую работу и что там делать

Самая тяжелая работа — её отсутствие!
© Рубен Багаутдинов

Ну вот, начальные сведения из программирования получены. И вы окрылённый начинаете слать резюме. Вы думаете гуглы с майкрософтами будут за вас драться кистенями? Посмотрите на ситуацию с точки зрения работодателя: приходит какой-то неизвестный тип, образование у него юридическое, самому 27 лет, английский средненький. Говорит, что что-то знает, честно-честно, но увы — доказательств этому нет. Возьмёте вы его на работу?

Что же можно сделать? Правильно, предъявить доказательства, что вы что-то можете! А как это сделать? Создать работающий проект достойный внимания, а лучше два-три, и выложить его в свободный доступ. Пусть люди увидят товар лицом. Думаете, после этого вас р-р-раз и взяли? Нет, не взяли, но без реализованных проектов шансов вообще никаких. Дело в том, что работодателю может что-то и не понравится, вы ведь начинающий ещё. Как же быть? Правильно, надо очень вежливо просить указать недостатки, благодарить за уделённое время и оные недостатки устранять. Потом идти к следующему работодателю и так до получения желаемой должности. Ну и конечно параллельно подчитывать теорию, чтоб от зубов отлетало. Однако проект в продакшене всё равно самое важное — он ваш проводник в мир больших денег.

Я знавал ребят, которые учили шаблоны параллельного программирования, аспектно-ориентированное, динамическое, и кто знает, что ещё, при этом недоумевали: «почему же меня на работу не берут?». Да потому, что показать нечего! Можно долго рассуждать о качестве кода, но какой в этом толк, если реальной работы ты не делал никогда?

Преимущества свитчера

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

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

Не умеете, ну… как же вы дожили до своего возраста?

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

Что делать, если оффер получен

Стоит ли говорить, что сумма зарплаты на первом месте работы — не самое главное? Да, она должна обеспечивать хотя бы минимальные потребности, ну там снимать койко-место, одеваться в секонде и кушать не одни только макароны, но не вздумайте торговаться! Джуниоров на рынке очень много, есть и с профильным образованием. И я писал выше, что у них преимущества есть. Поэтому, получили оффер — радостно киваем и выходим на работу. На ней, между прочим, ещё продержаться надо. Для джуниора-стажера увольнение не редкость, даже если для своего уровня он идеален. Просто толку от такого человека сравнительно мало, делает он самую простую работу. Закончилась такая или просто заказчик решил сократить штат: «спасибо, дорогой друг, мы будем о тебе вспоминать». Что же делать? Как я и говорил, готовиться к финансовой нестабильности и не унывать — быстренько искать другую работу. Ещё хороший способ: брать на текущей работе отпуск и идти на стажировку/испытательный срок. И только если он успешно пройден, увольняться со старой. Это сложно, согласен, но на ваших руках, возможно, семья, другие близкие люди — рисковать их будущим вы не можете.

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

Ещё на первой работе не нужно лезть в бутылку. Как сказал один мой знакомый тимлид: «Проблема студентов не столько в том, что они не знают библиотек, сколько в том, что не умеют работать в команде». К примеру, если твою работу критикуют, на самом деле это одолжение. Оправдываться, тем более ругаться, не нужно — максимум очень корректно попросить пояснить, что именно не так. Ну и бегом исправлять ошибки. С другой стороны, бояться их тоже не следует. В конце-концов вы начинающий, право на ошибку у вас есть.

Бывает так, что в работе вы сталкиваетесь с затруднениями. Допустимо ли спрашивать? Конечно, да! Но вести себя нужно точно так же, как с ментором: в начале сам, потом гуглить, потом на форум и только потом задавать вопросы.

Сколько же нужно проработать на первой работе? Если с работодателем нет других договорённостей, то хотя бы полгода, но лучше год. Всё это время усиленно учиться: осваивать шаблоны, паттерны, фреймворки, метрики. И после этого уже посматривать по сторонам и пробовать говорить об увеличении зарплаты. Человек, проработавший год, превращается нет, не в миддла, но в уверенного джуниора — его уже хантят эйчары, он доказал, что может!

При этом, договорённости надо выполнять. Договорился, что проработаешь минимум два года — сделай это. Условились закончить проект? Заканчивай! Карма, она ведь такая: какой мерой вы отмеряете, такой и вам будут мерить.

Однако, выполнение договорённостей не стоит смешивать с чувством вины. Поясню это на примере. Вот проработали вы год, повысили свой уровень, и вот вам предлагают другую работу. Стоит ли терзаться, мол как же так, меня учили, а я такая сволочь ухожу? Если вы выполнили всё, о чём договорились, нет, не стоит. Вот почему: сотрудника принимают не от большой доброты, а в чаянии прибылей. Если вы проработали год, значит доход от вас превысил расход, иначе уже давно бы уволили. А значит всё в порядке. Я сам переживал, мол как же так, проект без меня окажется в сложной ситуации. Всё же уволился, и ничего не случилось, так что не стоит переоценивать собственную важность.

Если в ай-ти компанию не берут или альтернативное место работы

Бывает такое. Что же, сидеть и ждать у моря погоды? Вовсе нет — обратитесь в государственную организацию, лучше всего в НИИ. Денег у госконторы обычно немного, но задачи по программированию возникают и часто довольно сложные. К примеру, моей первой работой была Николаевская астрономическая обсерватория (НИИ НАО). Чем только я там не занимался: обработка результатов астрономических наблюдений, математическая статистика, веб-разработка, базы данных. Сейчас много говорят о бигдата, так вот задачи с этой самой бигдатой у меня были ещё в далёком 2005-м году. Кто не верит, может вспомнить старую присказку «много как звёзд на небе» или словосочетание «астрономические числа». Правда приходилось и ящики таскать, но это не так уж страшно.

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

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

Вам за 40, или борьба с дискриминацией

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

  • Во-первых, можно поискать работу с западным руководством. Как правило, в Европе и США подход к гендерным и возрастным различиям проще: если человек обладает знаниями и может работать по состоянию здоровья, он подходит. Вообще на западе, насколько мне известно, другие традиции происходящие с одной стороны из-за законодательной борьбы с дискриминацией (попробуй только отказать из-за возраста, национальности или пола — штрафы будут «освежающей» величины), с другой — ориентации преимущественно на зарабатывание денег. Напротив, в некоторых отечественных конторах девизом до сих пор является: «мы не пашем, не сеем, не строим, мы гордимся общественным строем» и всякий, кто не разделяет политических, социальных или иных убеждений — враг, брать на работу его не стоит.
  • Во-вторых, спасением для возрастных или по ряду причин не могущих работать в офисе остаётся фриланс. Я писал , что это сложно и подходит не каждому, но у свитчера есть ряд вышеуказанных преимуществ. Во всяком случае, если не пробовать, не получится точно! Заказчику фрилансера вообще всё равно, как выглядит человек на другом конце, важно, чтобы работа была выполнена в срок и с приемлемым качеством. Так что, если не берут совсем никуда, об этом виде заработка можно подумать.

История об инвалиде-колясочнике

В заключение я хочу рассказать об одном свитчере из Сибири — инвалиде-колясочнике. Человек бывший бизнесмен, попал на своём внедорожнике в аварию — компрессионный перелом позвоночника + проблемы с руками + чёрт знает что ещё.

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

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

Мужик пошёл на удалённые курсы и через несколько месяцев получил первую работу: писать XML-ки и создавать Xpath-ы. Сейчас он успешно работает удалённо, получает программистскую зарплату в долларах. Саша, если ты прочтёшь это, передаю тебе большой привет и шлю лучи добра, ты — молодец!

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

10 советов, как быстро выучить иностранный язык

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

1. Выучите основной запас слов

Не думайте, что иностранный язык с первых дней станет для вас родным. Даже у самых талантливых полиглотов таких чудес не случается. Изучение другого языка — это медленный и кропотливый процесс, но не бесконечный. Шаг за шагом вы будете приближаться к своей цели и, наконец, достигните ее. Так вот, начните со 100 самых распространенных слов и фраз в языке, который учите. Затем по мере освоения расширяйте лексикон до 500, 1000 слов и т.д.

Интересно и одновременно приятно для ученика будет узнать, что на 1000 распространенных слов приходится 80% всей разговорной лексики, а на 3000 слов — 99% . Так что все намного проще, чем кажется. Главное — начать.

2. Лучше заниматься индивидуально, чем в группах

У каждого свои знания и свой ритм. Когда вы посещаете групповые курсы несколько раз в неделю по 1,5-2 часа, знания улетучиваются быстро. На это есть определенные причины. Во-первых, эффективнее изучать новый язык чаще и более короткий период (например, по 3-4 часа каждый день на протяжении 3-4 недель), чем растягивать обучение на месяцы или годы. Во-вторых, в индивидуальных занятиях преподаватель увидит ваши способности, узнает предпочтения, интересы, определит скорость усвоения материала и т.д. Поэтому, если хотите быстро выучить иностранный язык, записывайтесь к репетитору на индивидуальный курс.

3. Найдите друга-иностранца

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

4. Применяйте мнемонические техники

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

5. Тренируйте свое произношение и слух

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

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

6. Разговаривайте сами с собой

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

7. Книги, кино, музыка на иностранном языке

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

8. Используйте новое слово/фразу на протяжении определенного периода

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

9. Относитесь с легкостью к учебе

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

10. Погружение в языковую среду

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

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

Поделитесь постом с друзьями!

Понравилась статья? Поделиться с друзьями:
Все языки программирования для начинающих