Программирование для гуманитариев – Telegram
Программирование для гуманитариев
6.77K subscribers
66 photos
4 videos
219 links
Личный опыт того, как скипнуть в IT с гуманитарным образованием. Что для этого делать, чего стоит бояться (спойлер: ничего!) и чего ожидать. Рассею мифы о программировании и мире IT.
Бот для вопросов об IT: @hum_it_bot
Download Telegram
#вашивопросы

Мне 24 года, имею высшее образование степени магистра. Хочу начать заниматься программированием, но опыта нет совсем. Хотя за компьютером сижу с детства, могу проводить многие манипуляции с ним (переустановить винду, разобрать/собрать, разобраться если что-то не работает). Так же активно прошиваю различные смартфоны, ставлю всевозможные твики и тд. Собственно вопрос: если нет опыта в программировании, то стоит сейчас этим заниматься? Останавливает то, что до ощутимых результатов придётся учится годами.

Ну почему годами, если взяться плотно за это дело, можно выучиться за 1 год, максимум - за 2. Всё зависит от наличия времени и мотивации. Я занялась программированием примерно в вашем же возрасте, и на работу устроилась через 2 с лишним года (думаю, это можно было сделать и быстрее, если бы у меня в наличии была более структурированная программа обучения и если бы я раньше начала искать работу по новой специальности).

Здравствуйте. А если интересно работать с роботами, автоматизацией, умным домом. То что нужно изучать из языков программирования? И не подскажете какое направление выбрать в вузе:)

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

Собственно у меня вопрос: есть ли смысл и целесообразность идти в ДАТА специальности, будучи полным нулем в математике?

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

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

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

Добрый день! Я сейчас закончила первый курс бакалавриата, направление Computer Science. Многие мои одногруппники изначально имели хороший бекграунд и с середины года уже попали на стажировки в Гуглы и Яндексы, а я весь год только изучала то, что они уже знали, и со стажировками как-то осталась за бортом. Хочется теперь использовать лето хотя бы для самообразования, но не знаю, во что податься. Я уже знаю какие-то основы, наверное, не хватает практики. Но за что мне тогда стоит взяться, чтобы это было хоть близко так же полезно, как стажировка? В общем, буду рада любому совету, спасибо! :)

Как-то уже неловко отвечать на этот вопрос, так как лето уже почти заканчивается, а задавали его месяц назад. Но лучше поздно, чем никогда.

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

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

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

Где новичку andorid dev искать идеи для мобильных приложений для портфолио? Нужно ли стараться, чтобы интерфейс выглядел симпатично?

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

P.S: Бот для вопросов сломался, и сообщения оттуда пропадают, но вы можете задать свой вопрос в личку.
Подскажите, где можно онлайн обучиться профессии data scientist?

Ресурсов в Интернете для этого масса.

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

Если же возможности пока не позволяют - нет такого бюджета, или пока нет уверенности, что готовы пройти полуторагодовой курс, можно начать с малого - в Интернете можно найти много коротких курсов за небольшую цену (или даже бесплатных), например, на онлайн-платформе Udemy (UPD 2022 - cейчас из-за санкций оплатить курсы студентам из России там нельзя), сейчас там много вариантов по цене менее 1000 рублей за курс. Можно для ознакомления пройти несколько таких коротких курсов и дальше определяться - готовы ли вы с головой погружаться в эту профессию, или нет.

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

Бот для ваших вопросов, похоже, починили: @hum_it_bot
Посоветуйте платный курс по изучению С# с нуля

Язык C# чаще всего используется для двух целей:
1) В платформе .Net, чаще всего речь идет о разработке программ под Windows, всем вам хорошо известной ОС.
2) Разработка игр на платформе Unity.

Поскольку я не знаю ваших целей, то начнем с этих двух.

Начнем с самых дорогих комплексных курсов, дающих профессию «под ключ» по одному из этих направлений:

1) Если в ваших планах разработка в рамках .Net, тогда, к примеру, вам подойдёт: Разработчик C# от GeekBrains. Длительность курса - 12 месяцев.

2) Если вы хотите заниматься играми на платформе Unity, тогда вам подойдет специализация Разработчик игр на Unity там же

Если вам интересны платные, но при этом менее дорогие варианты, то предлагаю выбирать по рейтингу и отзывам на одном из сайтов образовательных онлайн-платформ, например:
тут есть целый раздел, посвященный C#. Тут есть и .Net, и Unity и просто язык C# без привязки к ним.

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

Бот для ваших вопросов: @hum_it_bot
#вашивопросы

Отличается ли атмосфера, взаимоотношений в рабочих коллективах IT сферы от коллективов других сфер? Т.е. можно ли выделить какие-то особенности и если да, то в чем они заключаются?

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

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

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

Тут редко встречаются люди, которые понтуются материальным достатком - машиной/квартирой/шмотками. Если кто-то понтуется, то чаще своими интеллектуальными достижениями (иногда - спорными).

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

Бот для ваших вопросов: @hum_it_bot
#вашивопросы

Какую литературу посоветуете почитать начинающему data scientist?

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

1) Аналитика и Data Science. Для не-аналитиков и даже 100% гуманитариев - книга, похоже, не очень известная, но отзывы у неё хорошие - я бы взяла.

2) Data Science. Наука о данных с нуля - книга для начинающих, включает в себя курс по Python.

3) Python и анализ данных - книга от создателя библиотеки pandas под питон - одного из самых используемых инструментов дата-саентиста.

4) Python для сложных задач. Наука о данных и машинное обучение - для чуть более продвинутых новичков.

Бот для ваших вопросов: @hum_it_bot
Подготовиться к тесту, сдать экзамен

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

Но я в деле подготовки к экзаменам не специалист. Я сама не училась очно в технических ВУЗах, не сдавала ни ЕГЭ по информатике, ни госэкзаменов или зачетов в ВУЗе. Училась я исключительно на онлайн-курсах, а потом сразу пошла работать в IT. Я знаю кое-что про собеседования на работу, но никак не про требования на экзаменах. Я даже не знаю, смогу ли сама сдать ЕГЭ.

Чтобы подготовиться к экзаменам, вам нужен репетитор, специализирующийся именно на том, что вы собираетесь сдавать - ЕГЭ/ОГЭ, экзамены в ВУЗе, или какие-то еще тесты. А найти репетитора в современном мире вообще не проблема - для этого есть специальные платформы, например, вот раздел для подбора репетитора по информатике на profi.ru. Эта платформа мне хорошо знакома, я сама подрабатывала у них репетитором в студенческие годы, тогда она, правда, называлась repetitors info. Там можно сформировать запрос любого содержания - менеджеры подберут подходящего специалиста по любому предмету и для школьника, и для взрослого. Можно также выбрать преподавателя самому по анкете и отзывам.

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


Бот для ваших вопросов: @hum_it_bot
#вашивопросы

Не могу определиться как развиваться дальше. С одной стороны тянет во фронтенд и всё что с ним связано. Но с другой стороны тянет в бизнес/системный анализ, + по работе есть опыт сбора и написания требований, ТЗ, также есть опыт тестировки. Во фронтенде классно, но когда смотришь на количество знаний, которое нужно даже для старта, становится не по себе. Как определиться, что тебе подходит лучше?

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

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

P.S. Друзья, если вы задавали вопрос в бота, но ответа так и не дождались - возможно, вопрос потерялся среди кучи других. Присылайте его в таком случае еще раз, не стесняйтесь.
Бот для ваших вопросов: @hum_it_bot
#вашивопросы

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


В вопросе не уточняется, какие страны человек готов рассматривать и каким бюджетом он располагает. Так что я буду отталкиваться от самого нереалистичного сценария - человек может позволить себе переехать в любую страну на земном шаре и у него неограниченное количество денег. Будь я таким человеком, я бы, наверное, выбрала США - там есть Гарвард, Стэнфорд, МИТ, Карнеги-Меллон и другие колледжи с мировым именем. США - колыбель IT-гигантов, там находятся Силиконовая долина и Boston Dynamics.

Помимо США хороших вариантов масса: Великобритания, Германия, Сингапур, Канада или Австралия и другие. Но в вопросе не уточняется, есть ли у человека какие-то предпочтения.

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

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

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

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

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

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

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

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

Бот для ваших вопросов: @hum_it_bot
Как НЕ стать программистом

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

1. Много времени тратить на чтение Хабра или других статей в Интернете. Казалось бы - а что тут плохого, статьи по теме, это же интересно и полезно? В чтении статей, конечно, нет ничего плохого. Но время - ограниченный ресурс, и вместо того, чтобы распыляться и читать обо всём подряд - лучше углубиться в изучение конкретных предметов - в ваш язык программирования, например. На хабре действительно много полезного, но часто там статьи посвящены узким темам, которые нужны только тем разработчикам, которые именно с этими технологиями работают. Например, зачем вам читать про докер, если вы еще в линуксе не разобрались? Зачем вам читать про миграцию с MySQL на Oracle, если вы ни с одной из этих субд незнакомы? Когда вам понадобится эта информация - тогда и почитаете. Пункт, казалось бы, очевидный, но я встречала новичков, которые читали на хабре все подряд, вместо того чтобы пойти и научиться хоть чему-то конкретному, и прогресса это не приносило.

2. Никогда не искать работу. Человек уже отучился год или больше, что-то знает, сделал какие-то свои домашние проекты - но он считает, что ещё не готов к собеседованиям. Загвоздка в том, что ощущение, что «ты готов» не настанет никогда, и так можно превратиться в вечного студента. Лучше провалить собеседование, чем никогда на него не приходить. А если с собеседованием не повезло - используйте возможность и спросите собеседующих, каких знаний вам не хватает на их взгляд, и какие темы нужно подтянуть. Закроете пробелы и вернетесь через пару месяцев (или попытаете удачу в другом месте).

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

4. Отсутствие дедлайнов. Это еще один путь в вечные студенты. Учиться «в своем темпе», скажем по книжкам, можно бесконечно, если этот «собственный» темп - не галоп. Вы же сами наверняка знаете, что читать книжку в своем темпе можно и 3 года. Преимущество даже онлайн-курсов в том, что в них есть расписание, есть какие-то тесты и зачеты - и лучше проходить их не в своем темпе, а стараться уложиться в расписание и сдавать зачеты в срок - тогда вы достигнете прогресса в четко обозначенные сроки, а не «после дождичка в четверг», то есть никогда.

5. Отсутствие реальных проектов. В учебных курсах задания часто бывают очень маленькими и не очень трудозатратными, и они не всегда строятся по принципу реальных проектов. Не ограничивайтесь учебными задачками - делайте реальные проекты - для себя, для друга, для мамы. Если вы изучаете веб-разработку - напишите для себя или для кого сайт с нуля и доведите его до работающего состояния. Потом пишите следующий. Учитесь играм - пишите простенькие игры «в стол» (или не в стол). Изучаете андроид или IOS приложения? Ну вы поняли. На работе вам никто не будет платить зарплату за то, чтобы вы написали функцию, которая вычисляет числа Фибоначчи.
Программирование для гуманитариев pinned «Всем привет! Когда-то я закончила гуманитарный вуз, где изучала историю и иностранные языки. После окончания ВУЗа и долгих попыток искать работу в близких к моему образованию и привычным скиллам сферах, я случайно попробовала пройти курс по программированию.…»
#вашивопросы

Привет! Хочу начать обучение на front end developer. Но говорят, лучше потратить больше времени и сразу смотрен на full stack. Что выбрать?

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

Что же касается работы - есть мнение, что можно быть сильным фронтэндером, можно сильным бэком, но сильным fullstack-разработчиком, одинаково крутым в обоих направлениях - нет. Думаю, в этом есть рациональное зерно. Так что, выбирая вакансию, имейте ввиду, что будете развиваться либо вглубь в узком направлении (в вашем случае, это, вероятно, будет фронтэнд), либо - будете мастером на все руки, но посредственным. Это не значит, что никому не стоит идти работать фулл-стек разработчиком - деньги за это платят, и слава богу. Тут уж вопрос предпочтений и интересов.

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

Бот для ваших вопросов: @hum_it_bot
👍1
#вашивопросы

Какой ВУЗ/факультет выбрать, если хочу работать в сфере IT?

Этот вопрос должен был поставить меня в тупик, так как сама я не поступала в технические вузы, и совершенно не ориентируюсь в том, какие есть факультеты, специальности и направления обучения. Знаю только названия известных московских ВУЗов, которые и так у всех на слуху (Бауманка, МИФИ, Физтех итд).

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

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

Кто ищет, тот найдёт.

Бот для ваших вопросов: @hum_it_bot
#FAQ
С чего начать?

Рассмотрим несколько кейсов:

Кейс 1: Вы уже готовы с головой уйти в IT, посвятить год-полтора учёбе, и побыстрее начать работать по новой специальности. И у вас есть деньги на обучение.

Тогда самое привлекательное, что предлагает рынок - это курсы при IT-компаниях. Например, достаточно интересно читается описание GeekUniversity при mail.ru и аналогичные проекты. Они обещают обучить профессии с нуля до уровня middle, выдать диплом гособразца о профпереподготовке, и гарантированно вас трудоустроить. Обучают на выбор веб-разработке, играм, информационной безопасности и др. Полный список доступных профессий смотрите на их сайте. Тут, конечно, стоит помнить, что описание на сайте не гарантирует, что всё будет идеально и вы останетесь довольны. Но всё же при наличии времени и денег, я бы сейчас выбрала такой вариант - это банально проще, чем самому искать учебники, учебные видосы и задачки. Когда я начинала, приходилось всё осваивать самостоятельно, а это сложнее и дольше. Недостаток у таких курсов - они дорогие. Исходите из возможностей своего бюджета - если цена для вас слишком большая, ищите альтернативы дешевле.

Kейс 2: А есть что-то покороче?

Бывают курсы и на полгода - очевидно, что материал там будет менее полным, но азы освоить можно. Например, в тех же онлайн-университетах есть вариант с обучением за 6-8 месяцев до уровня Junior +стажировка.

Кейс 3: Вы настроены не так серьезно. Хотите попробовать ради интереса, а там как пойдет. Либо не устраивает цена вариантов выше.

В интернете есть много коротких курсов, которые займут месяц, а стоят либо дешевле, чем вышеобозначенные варианты (цены начинаются от 500-1000 рублей), либо и вовсе бесплатны. Выбирайте курсы по computer science или программированию, в описании которых написано «с нуля», «для начинающих», «101» и так далее - ориентируйтесь на отзывы или понравившееся описание. Пройти один или парочку таких курсов недостаточно, чтобы освоить новую профессию и найти работу, но для ознакомления и ради интереса подойдёт. Поэкспериментируете и поймёте, интересно ли вам двигаться дальше в этом направлении.

Кейс 4: Я хочу учиться бесплатно.

И так тоже можно - записывайтесь на бесплатные вебинары и мастер-классы.
Выбирайте методом проб и ошибок бесплатные курсы на различных онлайн-платформах - помимо вышеупомянутых их еще масса: stepik, coursera, edx и др. Часто курсы, особенно зарубежные, доступны бесплатно, если вы не претендуете на сертификат об их окончании.

Если вам подходят курсы на английском языке, значит вариантов больше - в том числе крутые гарвардские, стэндфордские и мит-овские курсы. Мой фаворит среди них - это гарвардский Introduction to Computer Science.

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

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

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

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

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

С курсами получается примерно то же самое. Что конкретно нам обещают за обозначенную сумму, нужно смотреть в описании курса, либо уточнять у их организаторов.

Обычно такие курсы предполагают расписание, составленное на всю длительность обучения - вам не придётся заморачиваться над тем, какие предметы вам нужны в первую очередь, а какие - второстепенны. Организаторы курсов подбирают стек технологий так, чтобы этот стэк соответствовал потребностям рынка. На таких курсах обычно работают специалисты из известных IT-компаний, которые знают, какие технологии сейчас востребованы, и каковы требования к кандидатам на вакансии. Часто обучение строится вокруг разработки реального проекта - так курсы стараются приблизить обучение по формату к работе в боевых условиях. Важный плюс - когда разработка проекта подразумевает работу командой, как на работе. Хорошо, когда кто-то будет читать/проверять ваш код (делать код-ревью). И вероятно, у вас будет свой куратор/ментор, к которому можно будет обращаться за помощью и консультациями. Часто в конце предлагают либо содействие в трудоустройстве, либо даже гарантируют вас трудоустроить.

Стоит ли всё это своих денег - решать вам. Тут (как и везде) нет гарантии, что именно вам понравятся преподаватели/расписание/список предметов/подача материала/темп обучения. Как и нет гарантии, что вы захотите погрузиться в учебный процесс и прикладывать достаточно усилий, чтобы освоить материал. Отзывы в Интернете - это отдельное болото. Хвалебные отзывы могут писать маркетологи, плохие отзывы могут быть происками конкурентов. Лучше доверять средним отзывам - где указаны и плюсы и минусы. Плохие отзывы могут быть вызваны и радужной картинкой, нарисованной маркетологами - мол пришел, заплатил деньги и всё - считай можешь ехать в Силиконовую долину и получать зарплату золотом. А реальность разочаровывает, оказывается, что ради результатов нужно стараться самому - учеба - это не прогулка на круизном лайнере.

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

Мнений о том, как лучше учиться - много. Кто-то считает, что всё можно выучить самому по книжкам и Интернету - информации там море, было бы желание. Другие считают, что нужно идти получать высшее образование и никак иначе. Кто-то готов платить деньги за курсы ради обучения «под ключ», а кто-то считает, что это бессмысленное вложение. Но главное, что нужно помнить - ваш успех зависит от того, сколько усилий вы приложите, от вашей увлеченности и от энтузиазма, а не от того сколько денег вы потратите. А что выбрать - организованную турпоездку, или самостоятельное путешествие - решать только вам, у любых вариантов есть свои плюсы и минусы.

Бот для ваших вопросов: @hum_it_bot
#FAQ
Нужен ли в IT английский язык?

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

- Можно ли начать учиться программированию, если не знаешь английского языка? - Можно. Начните с русскоязычных курсов/книг.

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

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

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

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

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

Если вас интересуют специализированные курсы английского языка для IT-специалистов, есть такие варианты:

- Курс Английский для IT-специалистов - от тех же geekbrains (совместный с EnglishDom).

- У Lingualeo также есть раздел с тематическими курсы - в том числе для айтишников.


Для освоения азов английского языка или чтобы подтянуть имеющиеся знания можно:

- Записаться на видеоуроки с преподавателем в Skyeng.

- Нанять репетитора на profi.ru или в Tetrika-school.

- Пройти заочные курсы на платформе Ешко по английскому языку.


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

Из бесплатного - конечно, Duolingo.

Бот для ваших вопросов: @hum_it_bot
#вашивопросы

1) Хотел бы узнать, с чего начать для входа в embedded programming?
2) 23 годика. Не поздно ли начать изучать программирование?

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

Если же вы хотите для начала поизучать тему «для себя» - можно поискать курсы по embedded systems на онлайн-платформах - например, вот список курсов на Udemy (UPD 2022 - cейчас из-за санкций оплатить курсы студентам из России там нельзя) - они преимущественно на англиском языке, но, возможно, есть русккие субтитры. Подобного в Интернете можно найти много - но есть ощущение, что стать инженером на одних онлайн-курсах - это задача нетривиальная - логичнее изучать подобные курсы в дополнение к основному образованию, а не вместо него.

На счет возраста: вы пока что самый младший автор этого вопроса, чаще всего люди начинают спрашивать, не слишком ли они старые начиная с 30-40 лет. Думаю, настанет день, когда тот же вопрос начнут присылать и 16-летние ребята:). Выше я писала, что в вашем случае (имхо!) логичнее пойти учиться в университет. Насколько я понимаю, второе высшее образование (если у вас уже есть первое) - это затея на 3 года. Вы готовы ближайшие 3 года посвятить учебе? Если да, значит не поздно.

Бот для ваших вопросов: @hum_it_bot
Недавно у меня вышел пост с кратким обзором IT-курсов для новичков и ответом на самый распространенный вопрос: «С чего начать?».

В дополнение к нему нашла ещё один вариант обучения, из относительно недорогих. Это Программирование для начинающих от ЕШКО (меня тут поправили, что «ешко» расшифровывается как Европейская школа корреспондентского обучения).

Что это за курсы? Насколько я поняла, это такая чисто заочка-заочка: вам присылают программу и учебные материалы (бумажные почтой или электронные в pdf) - вы самостоятельно осваиваете программу в оговоренные сроки, делаете домашние задания и отсылаете их своему преподавателю. Преподаватель проверяет задания и даёт обратную связь. Периодически сдаёте зачёты.

В общем, вариант для тех, кому нравится учиться самостоятельно по учебникам. Плюс в том, что программа составлена на год и у вас будет свой преподаватель, с которым можно общаться. Учат там паскалю, Java, C# и PHP.

Длительность обучения - 12 месяцев, а цена около 1500 рублей в месяц, либо 10-18к за весь курс (в зависимости от опций и скидок).

P.S: Там предлагают скачать бесплатный пробный урок - скачивайте, и делитесь своими впечатлениями в боте @hum_it_bot. Если будет свободное время - сама тоже скачаю и расскажу, что думаю.
В общем, пробный урок онлайн-курса от Ешко я посмотрела, и моё мнение такое: мне больше нравится формат курсов с видеолекциями - там более живенько и интересно. Вообще учиться по учебникам - это не мой формат, на мой вкус тексты учебников слишком сухие и занудные. Интереснее когда смотришь, слушаешь и выполняешь задания вслед за лектором - так нагляднее.

Но у кого характер более усидчивый, тем подойдёт. Так что скачивайте бесплатный пробный урок и смотрите сами - как вам такой формат, понятна ли подача материала, или тяжело продираться через текст. Всё-таки, этот вариант гораздо дешевле прочих, и никто не мешает совмещать его с видеокурсами на том же Udemy(UPD 2022 - cейчас из-за санкций оплатить курсы студентам из России там нельзя), к примеру.

Из плюсов - учат в ЕШКО именно программированию в общем, универсальным понятиям и приёмам - а не просто отдельным инструментам вроде конкретного языка программирования. То есть учат мыслить как программист, а не как «питонист», «джавист» и так далее. Если понимаешь общие принципы программирования, можно переключтаться между разными языками программирования без особых проблем.

На мой вкус варианты вроде geekbrains от mail.ru или курсов при Яндексе и других IT-компаниях выглядят интереснее. Но и цена там в 10 раз больше.
#вашивопросы

Где можно освоить ios разработку? Опыта нет

1. Факультет ios-разработки от GeekUniversity при mail.ru. Длительность всей программы - 1 год, и после неё обещают вас сразу трудоустроить.

2. Курс Программист iOS - тоже от geekbrains, но это экспресс-формат - обучение длится 6 месяцев, и обучают до уровня Junior. Подходит для обучения с нуля.

3. Курс iOS-разработчик с нуля - от Нетологии - длительность курса 10 месяцев. По окончании курса помогают с трудоустройством в компанию Redmadrobot - обучение заточено под проекты, которые разрабатывают в этой компании.

4. Если хотите варианты подешевле или бесплатные и готовы учиться в более самостоятельном режиме - смотрите курсы по iOS на образовательных платформах, например, на Udemy (UPD 2022 - cейчас из-за санкций оплатить курсы студентам из России там нельзя). Аналогичные варианты можно найти на coursera, edx, stepik и еще наверно с десяток похожих платформ. Такие курсы обычно менее длительные и сфокусированы вокруг одной темы - чтобы освоить профессию, придётся в итоге самому составить себе программу из таких небольших курсов (и книг, как вариант) - т.е. самому разобраться, какие предметы нужно изучать и в каком порядке.

5. Для тех, кого тоже интересует iOS-разработка, но кто не совсем новичок, а уже немного шарит в программировании - подойдут курсы от Otus - тут обучение ориентировано на тех, кто пришёл не с нуля, а уже имеет опыт хотя бы на уровне Junior: iOS-разработчик. Базовый курс

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

Бот для ваших вопросов: @hum_it_bot