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

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

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

Если цель пока что ознакомительная - попробовать, посмотреть, что это такое - то тогда подойдёт любой короткий (скажем, на 1 месяц) онлайн-курс по программированию или computer science для начинающих - часто в основе таких курсов лежит несложный, но интересный проект - например, написать простенькую игру. Поискать такие курсы можно на онлайн-платформах - коих сейчас великое множество, что-нибудь вроде Coursera, Edx, Stepic, Udemy итд итп, или просто по гуглу. Ключевые слова - для начинающих. В описании к таким курсам должно быть написано, что не требуется никаких предшествующих знаний или подготовки. Понравится - можно будет «ввязаться» во что-то более сложное и длительное.

Можно начать и с какой-нибудь книги - но курсы более интерактивны и увлекательны, так что проходить их интереснее, но тут каждому своё.

Если же цель - с головой погрузиться в IT и выходить на трудоустройство - то я бы рекомендовала в первую очередь курсы при крупных IT-компаниях (тот же mail например) - c гарантией трудоустройства. Там вам будет и программа из самых востребованных предметов, и задания, и на выходе - предложения о работе.

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

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

Привет! У меня вопрос; а какие вообще направления в айти существуют? Мелькают перед глазами фронт, бэк, фуллстек, да и все. Наверняка же что-то кроме них есть?

Вы назвали по сути виды разработчиков веб-приложений. Фуллстек - это даже не отдельное направление, а гибрид из бэка и фронта в одном человеке. А вообще в it есть не только программисты. Есть еще, к примеру, data-scientists, тестировщики, инженеры DevOps, системные администраторы, администраторы баз данных, специалисты по информационной безопасности, pen-тестировщики. Есть еще менее технические профессии - компьютерные лингвисты, верстальщики, проджект-менеджеры и аналитики, UX-дизайнеры и UI-дизайнеры. Сами программисты, если уж зашла о них речь бывают разные и разрабатывают разные продукты - веб-сайты, мобильные приложения, поисковые системы, программы для ПК, карты, игры, базы данных, целые операционные системы и системные продукты, криптографические штуки и модный нынче блокчейн, языки программирования, интерпретаторы и комплияторы для них, математические модели, компьютерную графику и VR, и что угодно ещё. Это очень обширный на самом деле вопрос, и вы найдёте много ответов даже в первых 5 результатах поисковой выдачи Гугла.
О чем спросят на собеседовании в конкретную компанию - сильно зависит от прихотей собеседующих. Кто-то намеренно дает очень простые задания, самую базу, действуя из убеждения, что человек и не должен уметь решать на коленке хитрые нетривиальные задачи. Кто-то наоборот очень любит «подловить» и даёт задания «на подумать» - мы с коллегами как-то дня три бились над такой задачей про мудрецов. Кто-то проверяет знания алгоритмов, кто-то считает, что это не показатель.

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

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

Здравствуйте, дайте пожалуйста совет. Хочу изучить языки программирования питон, жава и жаваскрипт. Но, не могу себе позволить ходить на курсы. Они у нас дорого стоят. Где найти основы программирования? Что читать? Где найти нужные материалы?

В Интернете есть и бесплатные курсы. Также на онлайн-платформах бывают бесплатные опции для прослушивания платных курсов - например, доступ к видео-урокам бесплатный, а доступ к домашним заданиям и тестам - только при оплате. Книги, думаю, тоже можно найти в свободном доступе. Ищите и найдёте. Тут мои посты с ответами на похожие вопросы: https://t.iss.one/it_human/61

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

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

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

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

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

Вопросы об обучении и карьере в сфере IT можно задать в бота: @hum_it_bot
Что нужно изучить, чтобы стать разработчиком?

Ниже - мой субъективный чек-лист для бэкенд-разработчика. Рассматривать его стоит как условный гайдлайн, а не как жесткий список требований - в зависимости от вашей предполагаемой специализации требования будут различаться. Например, не все пишут софт под Linux, есть еще .Net и экосреда Microsoft - если вас тянет в разработку под Windows, ̶п̶о̶д̶у̶м̶а̶й̶т̶е̶ ̶д̶в̶а̶ж̶д̶ы̶ то Linux уже не является таким жестким must-have.

1) OS Linux. Нужно уметь работать с командной оболочкой (например, bash) и основными Unix-утилитами.

2) Ваш основной язык программирования, с которым планируете работать. Также - стандартные либы и модули к нему, а также распространенные дополнительные либы. Для Python это будет, к примеру, datetime, os, sys, json, requests, collections. Также - основные инструменты для настройки окружения - pip и pyenv в случае с Python. И еще - часто используемые фреймворки, в случае с питоном это, в первую очередь - Django + django rest framework. С помощью всего этого нужно научиться делать свои домашние проекты - простенькие сайты и скрипты.

3) Другие языки программирования, хотя бы на уровне основ. Особенно я приветствую знакомство с одним из языков с си-подобным синтаксисом (C, С++, Java) и со строгой типизацией. Не то чтобы это прямо маст-хэв для того же питон-разработчика, но чем богаче бэкграунд, тем лучше. Как минимум, читать код в процессе работы придется на разных языках, не только на вашем «родном».

4) Базы данных. Знать, что такое реляционные БД хотя бы на уровне ликбеза. Выучить язык SQL. В «бою» также понадобится знать особенности и фишечки конкретной субд (PostgreSQL, Mysql, SQL Server, Oracle) - но тут зависит от того, какая из них используется конкретно вашим будущим работодателем. Скорее всего, 60% из всего, что нужно знать про конкретную СУБД вы выучите уже в процессе работы. Также нужно освоить инструменты для работы с БД в вашем языке программирования (например, в питоне psycopg2 для работы с PostgreSQL или SQLAlchemy - для любых субд).

5) Основы Computer Science. Хотя бы на уровне ликбеза общие сведения об устройстве операционных систем, файловых систем, памяти и CPU. Слова «стек», «хип», «процессы», «потоки» не должны звучать для вас как иностранные.

6) Сеть и сетевые протоколы. Опять-таки, как минимум - на уровне ликбеза. Не обязательно в мельчайших подробностях. Что такое TCP/IP, HTTP, ICMP, DNS. Как в общих чертах работает этот ваш Интернет? Что происходит, когда мы набираем в браузере какой-нибудь домен, например, гугловый? Что такое nat? Как настроить iptables.

7) Конкретные технологии и инструменты - разные работодатели используют разный набор. По моему опыту, всё это в основном осваивается прямо на работе уже в процессе решения «боевых» задач. Но, разумеется, можно облегчить себе жизнь и опробовать что-то из этого дома в спокойном темпе и без стресса. Просто перечислю некоторые из них:
- Docker - контейнеры с линуксом внутри. Очень многие программы и приложения (в том числе сайты, которыми вы все пользуетесь) в современном мире работает внутри докер-контейнеров. Когда освоите Linux, с докером тоже быстро разберетесь.
- RabbitMQ - брокер для работы с очередями
- NoSQL базы данных - Redis, MongoDb итд
- Инструменты для ci-cd (continuous integration - continuous delivery) - например, gitlab, jenkins итд.
- Облачные платформы и инструменты для работы с ними - например, AWS Amazon или Google Cloud
- Kubernetes - место, где «живут» приложения в докер-контейнерах

Если вы считаете, что я забыла упомянуть что-то важное, вы знаете, где меня найти: @hum_it_bot. Вопросы и уточнения туда же.
Забыла вчера упомянуть еще один must-have для разработчиков:

8 ) Система контроля версий: чаще всего это git. Не обязательно знать все возможности гита, их очень много - главное - это несколько базовых команд. Реже встречается mercurial или другие.
#вашивопросы

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

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


Вы, наверно имели в виду SEO, потому что CEO - это исполнительный директор.

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

Из этого описания не до конца ясно, владеете ли вы языками программирования, но, предположим, что владеете на каком-то уровне. Тогда из текущих задач вырисовывается - либо развитие как Data Scientist - с упором на изучение математики, машинного обучения и нейросетей. Либо - разработка - значит углубление в языки программирования и Computer Science. И есть еще вариант - продолжать заниматься SEO.
#вашивопросы
Здравствуйте.
Как Вы могли бы прокомментировать утверждения:
1. "Учить стоит лишь то, чему можешь представить хоть какое-то применение. Изучать линал, графы и тонкости работы с памятью бессмысленно без хоть какого-то понимания, где это всё пригождается"
2. "Умение читать и понимать код на порядок ценнее умения его писать"
3. "Первым делом гугли документацию, а потом уже стековерфлоу"
4. "Нет плохих паттернов/языков/стилей/стеков/библиотек/каркасов. Есть бизнес-задачи, и от них зависит, какие инструменты и решения подойдут лучше всего"
5. "WASM - сила, native - могила. \0/ Противостояние нативных и веб решений в конце концов перерастет в их слияние»


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

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

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

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

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

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

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

3. В идеальном мире всё верно, но в реальном разве много кто так делает? 🙂

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

5. ¯\_(ツ)_/¯

Присылайте ваши вопросы в бота: @hum_it_bot
#вашивопросы
Добрый день! Расскажите пожалуйста, с вашей точки зрения, как сейчас, во время кризиса чувствует себя IT-индустрия разработки ПО (в частности аутсорсинг и разработка корпоративного ПО и сайтов), происходит ли где-то спад или оптимизация расходов (на персонал).?

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

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

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

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

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

Мне как раз 23, почти 24))
Сейчас работаю в продажах 2b2, но по зарплате не устраивает (для Москвы, 50-70к совсем средние цифры)
Года 4 назад мне предлагали рассмотреть программирование, но был уверен, что буду только нанимать программистов и будет своя компания. Как итог - открытие и закрытие ИП (своя точка больше года простояла). Далее снова работа в продажах. Прихожу сейчас к тому, что имеет смысл радикально поменять направление.
Сейчас есть сумма на курсы от мэйла (с трудоустройством) и желанием уехать за братом в Канаду.
Но там либо разнорабочим, либо в программирование (выбираю второе).
Очень сложно начинать с нуля.
1. В каком разделе IT максимально будут эффективны раскачанные soft-skills навыки (ты описала 2 типа программистов, но я гораздо активнее первых и ну совсем не застенчивый)?
2. Прочитал про различные курсы и видится, что у GeekBrains более отточенная школа, что бы порекомендовала?
Ещё раз спасибо за полезную инфу!


Если хочется использовать именно soft-скиллы, а не уходить в технические аспекты - то есть много профессий около-менеджерских и аналитических: аналитики, project- и product-менеджеры, product owner-ы и скрам-мастеры - там упор больше на коммуникацию и организаторские навыки. Если же вы хотите быть именно программистом, то soft-скиллы - это тоже полезно и ценно, но к ним потребуются и технические навыки.

По поводу geekbrains - в них мне нравится, что они а) основаны при компании mail.ru - соответственно, выбор дисциплин заточен на те технологии, которые используются в реальной боевой разработке внутри этой компании, и которые актуальны и востребованы на рынке. б) создатели заявляют о гарантированном трудоустройстве или стажировке - а значит, будет шанс окунуться в «боевую» разработку - где обычно приобретается 60% или больше нужных навыков. Но исходить нужно из собственного бюджета и мотивации.

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

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

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

Ваши вопросы можно задать в бота: @hum_it_bot
#вашивопросы

У меня небольшой вопрос творческого характера. Где черпать идеи для программ если ты новичек в программировании?

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

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

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

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


Я замечала, что чем бы ни занимался человек - фитнесом там, йогой, чтением книг или ведением небольшого телеграм-канала, как я - обязательно найдутся люди, которые обвинят его в том, что его деятельность - это какая-то вредная и ненужная херня. Давайте по пунктам. Я не инструмент крупного капитала, канал - моя личная инициатива с целью поделиться своим опытом, который может быть кому-то полезен. Я убеждена, что есть много людей, которые могли бы с успехом и интересом работать в IT, но им не приходит в голову, что у них это может получиться - просто потому что в прошлом они изучали совсем другие науки и работали в других сферах. Насколько я понимаю, автора беспокоит, что рыночек наводнят «некомпетентные гуманитарии», и из-за этого у «настоящих» айтишников просядут зарплаты. И он исходит из предпосылки, что из гуманитариев могут получиться только неполноценные айтишники, ну просто потому что fuck you that’s why. Я же пишу про то, что смена профессии - это вполне реальная и достижимая цель. И что если приложить достаточно усилий и усердия, то можно стать хорошим айтишником, независимо от того, чем вы занимались в прошлом.

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

С чего начать?
Например, пройти простенький короткий курс (не дольше месяца) в Интернете по computer science или программированию. Ключевые слова: «введение…», «introduction», «для начинающих», «1.01», «подготовки не требуется» итд. Такие можно поискать на любых образовательных платформах - coursera, edx, stepik итд - и ориентироваться на доступность изложения: например, кому-то подходят курсы на английском языке, а кому-то важно, чтобы они были на русском.

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

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

Есть ли смысл пробовать себя в it , если английский нулевой уровень?
Смотрите. Подавляющее большинство айтишников, которых я знаю, английским языком владеют довольно плохо. Тут главное требование - уметь прочитать технический текст (мануал, документацию к коду) и извлечь из него смысл, понять написанное. Технические тексты проще, чем литературные произведения или газетные статьи, так что это не сверхъестественный уровень. Еще один важный момент - нужно уметь гуглить на английском языке, потому что ответов на все вопросы на русском языке в Интернете нет. Так что прокачать английский хотя бы до уровня понимания прочитанного - пожалуй, стоит. Но я бы не рассматривала незнание английского на старте как непреодолимое препятствие - на русском языке есть и курсы, и книги по программированию. Просто будьте готовы к тому, что английскому тоже нужно будет уделить хотя бы минимальное время. Хороший английский - это очень полезно, так как дает пропуск к англоязычной профессиональной литературе, курсам и международным конференциям. Но не то чтобы без него нельзя идти в профессию - большинство же идут). Мой более ранний пост на эту тему: https://t.iss.one/it_human/17

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

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

Мой опыт свидетельствует об обратном. Изначально все знания я получала на онлайн-курсах (на Coursera, Edx.org и других). И они определенно были не про выкачивание денег, потому что денег я за них не платила (за доплату можно было получить какой-то подтвержденный сертификат, но я этим не заморачивалась). Также среди моих знакомых разработчиков есть люди, которые учились только по книжкам, даже курсов никаких не проходили. Так что вопрос не в источнике, из которого получаешь знания, а о правильном настрое.

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

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

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

Привет!Хочу начать обучение в IT сфере, но не знаю за что взяться с начала... так как нравится многое, а вот определиться не могу!)
Пройдите курс по введению в Computer Science. Без конкретной специализации, это как общая медицина. А там можно будет выбирать направления.

Мне нравиться программировать на Python (проходил С, С++), но связывать жизнь я планирую с другой сферой.
Сколько Вы считаете времени нужно чтобы попасть на первую работу и сделать IT как вид заработка, план Б. Или с таким подходом и не стоит тратить время?


Что касается первой работы, думаю поучиться нужно минимум полгода-год. Я проходила разные курсы около 2х лет, прежде чем податься на первую работу, но это не значит, что нельзя это сделать быстрее. А что касается вашего плана «Б», тут затрудняюсь ответить. IT как «запасной аэродром»? Звучит достаточно энергозатратно: осваивать профессию, которая требует значительной технической подготовки и постоянного обучения ради того, чтобы ее потом забросить.

Бот для ваших вопросов: @hum_it_bot (их много скопилось, разгребаю в порядке очереди)
Не технарями едиными…

Однажды одна шапочная знакомая подкинула мне ссылку на гарвардский курс cs50 introduction into computer science, мой one love. И первое, что рассказал преподаватель этого курса David J. Malan - это то, что он сам в более молодые годы, учась в Гарварде забрёл на cs50 совершенно случайно… До этого он был далёк от computer science, и интересовался историей, литературой и другими чисто гуманитарными дисциплинами. И всё, мир потерял его как гуманитария. А преподаёт он очень клёво - обязательно послушайте, если английский язык позволяет.

А еще есть Ларри Уолл, придумавший язык программирования Perl. Он по образованию лингвист.

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

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

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

Но Люба не сдаётся. И вы тоже не сдавайтесь. Подписывайтесь на блог Любы, вместе всегда проще двигаться вперед.
Друзья, я здесь неоднократно упоминала мой любимый курс - гарвардский CS50 Introduction into Computer Science.

Так вот, добрые люди написали в личку, где можно найти видео курса с хорошим переводом на русский язык. Ловите ссылку: https://javarush.ru/quests/lectures?quest=QUEST_HARVARD_CS50&level=2
#вашивопросы

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

Знаете, я не особо провожу различия между бэкендом и написанием программ и приложений. Потому что бэкенд часто по факту - это программы, которые работают на стороне сервера и взаимодействуют с веб-приложениями опосредованно (особенно если речь идет о мире микросервисов). Как лучше выбрать - пробовать и смотреть, к чему больше лежит душа. К тому, с чем взаимодействует конечный пользователь со стороны браузера, или к внутренней «магии» на стороне сервера? Или, может быть, вас больше заинтересуют мобильные приложения или даже data science. Вопрос в том, во что больше желания погружаться и углубляться. Бывает такое, что начинаешь ковырять технолгию, и понимаешь, что глубже копать как-то не хочется - у меня, например, так было с андроид-приложениями. А бывает, что наоборот - хочется узнать о ней побольше и круто в ней разбираться.

Про языки программирования - тут же сильно зависит от первого вопроса, то есть, смотря какую технологию вы выбираете. Я уже отвечала на похожий вопрос, читайте здесь: https://t.iss.one/it_human/72

Также было бы интересно узнать где есть хорошие курсы бесплатные или платные.
Это самый популярный вопрос. Его задают тут каждый день. 🙂 Читайте тут: https://t.iss.one/it_human/61

Что вы думаете о возможности стать программистом в возрасте за 40?
Это тоже частый вопрос, я его уже касалась, например, тут: https://t.iss.one/it_human/42 и тут: https://t.iss.one/it_human/78.

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

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

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

Идея здравая, но есть одно «но». Это «но» - моя full-time работа, которая отнимает большую часть времени. Так что проходить целыми днями килотонны курсов, чтобы пилить потом на них обзоры я пока что не могу себе позволить. С другой стороны, вы можете присылать мне вопросы точечно по конкретному курсу или книге, если они есть в свободном доступе, и я постараюсь составить на них рецензию и оценить, насколько они могли бы помочь вам в карьере.

Бот для ваших вопросов: @hum_it_bot
Меня часто спрашивают, как коллеги воспринимают моё гуманитарное прошлое, что думают обо мне в связи с этим.

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

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

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

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

Доброго времени суток! Что посоветуете изучать в данном время и что будет иметь актуальность в дальнейшем? Какие ЯП? Лично сам думаю о Python т.к. низкий порог входа. Опыта в программировании не имею. Спасибо заранее.

Python - хороший язык для старта. И порог входа у него достаточно низкий, так что вполне подойдёт. Но лично я всем советую начинать с Си, как уже писала ранее: https://t.iss.one/it_human/23

Добрый день! Я давно присматриваюсь к IT и решил для себя, что хочу погрузиться в эту сферу с головой. У меня нет планов сразу пытаться выскакивать на рынок, в первую очередь для себя я хочу набрать опыт. Вот вопрос: лучше будет начать с изучения питона или с изучения вёрстки? Что будет проще, а что будет правильнее?

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

Что такое верстка?

Вот здесь можно найти ответ: https://lmgtfy.com/?q=%D1%87%D1%82%D0%BE+%D1%82%D0%B0%D0%BA%D0%BE%D0%B5+%D0%B2%D1%91%D1%80%D1%81%D1%82%D0%BA%D0%B0

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

Первое, что я прошла - был какой-то элементарный курс, что-то вроде Programming 101, на javascript на курсере. Зашла в него совершенно случайно, и даже при совершенно нулевой подготовке он оказался элементарным.

Дальше изучала уже все подряд - свой любимый CS50 на Си, около 5-10 разных курсов по питону, computer science и data science (выбирала их случайно). Курс по базам данных и SQL от MIIT. Курс-сборную солянку Programming languages, где были в том числе lisp-подобные функциональные языки. Случайно набрела на Haskell, поизучала и его (и сразу забыла). Принстонский курс по алгоритмам и структурам данных на Java, затем еще один курс про алгоритмы. И еще пара книг про сети, командное окружение Unix и линукс. А потом устроилась на работу. 🙂

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

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

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

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


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

А если серьезно, то на джаву нужно как минимум пару месяцев, а лучше полгода. Зайдите на сайт stepik, и введите в поиске Java, там куча курсов, в том числе бесплатных, все на русском языке. То же самое можно и с другими онлайн-платформами проделать.

Объясните что такое IT? Что такое SAP? Что такое вёрстка? ит.д.

Ребят, если вам лень загуглить термины, то IT - это точно не для вас. 🙂 Рабочее время разработчика чуть ли не на 90% времени состоит из гугления и поиска ответов на возникающие в процессе работы вопросы. Всё что я могу сделать с такими вопросами - это скопировать определение из википедии или других источников и вставить его в пост. Но какой в этом смысл?

Лена, привет! Спасибо за посты - очень интересные и мотивирующие!:) Помоги, пожалуйста, советом. У меня большой опыт работы в сфере туризма, специалистом по системам бронирования. Теперь я хотела бы расширить сферу своей экспертизы - попробовать себя в качестве разработчика в авиакомпании или агентстве по бронированию. Таким образом я бы освоила полный цикл операционной работы агентства, и стала бы продуктивным и ценным специалистом. На самом деле я хочу стать программистом, но мне уже 35, и я не могу себе позволить уволиться и идти на низкооплачиваемую работу, особенно учитывая то, что я не уверена, что у меня получится. А в индустри авиаперевозок/туризма мне было бы легче постигать основы программирования и получить опыт, параллельно работая на должности, для которой у меня уже есть какие-то навыки. А дальше этот опыт разработки я смогла бы использовать как основу, от которой можно учиться дальше, выбирать интересные направления и проект. Как тебе такой план? Как мне понять, что именно стоит изучать в программировании с целью разработки онлайн для трэвел агентства? Может, есть какие-то форумы или специальные курсы? Я думала найти каких-то программистов, которые уже работают в авиакомпаниях или агентствах и просить их стать моими менторами? Хотелось бы начать с чего-то недорогого и ни к чему не обязывающего вроде Курсеры. Исходные данные: в сфере IT начинать обучение нужно с нуля, но без проблем могу проходить любое обучение на английском. Учиться люблю, но не всегда получается... Буду очень рада совету:)

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

Но программистам на самом деле всё равно, где работать - в авиакомпаниях, банках или магазинах детского питания :). Разработчик, работающий в сфере туризма не обязательно чем-то отличается от другого. Вопрос скорее в стеке технологий, которые нужно освоить. Потому что в одной авиакомпании используют, например, Python, в другой - Java. Погуглите вакансии разработчиков на hh в компаниях, которые занимаются туризмом - и посмотрите, какой там набор требований бывает (скорее всего, он отличается от компании к компании, но возможно будет и что-то общее). Таким образом можно будет понять, на какие технологии ориентироваться и что именно изучать.


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