Всем кто хочет в IT

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


Ответ на вопрос что не дает массово всем разбираться в IT направлениях я выяснил в комментах в посту "Как я поменял жизнь!" от чувака, который после работы на фабрике стал веб программистом на Python  с использованием фреймворка Django: Как я поменял жизнь!


Если исключить тех людей, которые просто не допускают мысли, что им хоть что то светит в этой области, основная проблема заключается  в том, что потенциальный айтишник  не знает с чего начать. В этом нет ничего сложного. Не боги горшки обжигают. Надо сесть за комп, написать запрос в поисковике "как сделать программу hello world на python" (или любой другой язык, если знаете что он вам больше подходит) и начать разбираться.  Если у вас что то не получилось, нужно конкретно сформулировать свою проблему. К примеру:


"я набрал программу в MS Word и не знаю как запустить ее"

Гуглим ответ "как запустить программу на python" и выясняем, что для этого надо установить собственно сам Python на компьютер. В процессе приходится разобраться что есть Python 2 и есть Python 3, программы для которых могут иметь множество различий. В итоге для запуска нескольких строк кода, которые выведут вам на экран "Hello world" с чтением всех сопутствующих процессов уйдет возможно не один день. Проблем с запуском будет много. Будут ошибки в коде по невнимательности, ошибки связанные с использованием кода под другую операционную систему, ошибки из-за с разницы между версиями языков программирования, ошибки отсутсвия дополнительных модулей. Главное гуглить и внимательно читать. Это занимает много времени. Ничего, это нормально. Главное не сдаваться и читать, пробовать, заново читать, разбираться в деталях. Дальше все пойдет быстрее и быстрее. Возможно когда то даже станет легче. Но если вы на не способны на такой  кропотливый труд, то у меня для вас печальные новости: работа на фабрике вам подходит лучше.

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

Sashurik

А напишите для нубов типа меня как и с чего вы начинали в программировании... Если это возможно. Для меня это все чистый лист.


carbofoserman

Начать можно с написания в Гугле запроса "уроки python" и выполнения инструкций по установке питона на комп и запуске первой программы "hello world".


Kalter1

и все, ты программист) а дальше этих уроков че?)


bontaurean

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


lita

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


carbofoserman

Путь конечно не будет таким простым как научиться делать "helloworld". Но если сделал для себя и для всех своих знакомых с полсотни проектов (как правило нашару), то вполне есть смысл уже ходить по фриланс сайтам и там оплата может быть как 10$/час, так и 30$/час:

https://www.upwork.com/ab/jobs/search/?q=python django&sort=recency


Но для этих проектов как правило нужно уже знать множество простых технологий (даже языками программирования их не называют) вроде HTML, CSS, MySQL, понимать принципы взаимодействия компонентов программы вроде REST, протоколы такие как HTTP. Если человеку нужен учитель и полностью отсутствует рефлекс написать в гугле "python rest application example", запустить найденный код, разобраться в нем самостоятельно, то человеку путь в программирование заказан. И к сожалению таких единицы, поэтому в программистах ощущается дефицит. Остальные возвращаются обратно на фабрику.


korneev123123

Сделай магазин.

1) сделать страничку на которой написано "магазин"

2) сверстать карточки товаров, чтобы на экране было их много

3) сделай подробную карту товара

4) подключи бек, чтобы товары брались из базы

5) сделай коризну, чтобы можно было выбрать несколько товаров, чтобы цена суммировалась и юзер как-то запоминалcя

потом можно усложнять дальше и дальше, а можно придумать ещё что-нибудь.


vano30003

почему именно python?


redhotchili87

Легко читаемый язык. Если знаешь английский то легко освоишь. Много где используется - web, data science, атоматизация


vano30003

читы к играм можно делать?


carbofoserman

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


lita

У меня вопрос по поводу "проектов". Знакомых у меня не особо много, тем более таких, кому могло бы потребоваться что-то в этой сфере, что они могли бы перепоручить кому-то другому, но даже "для себя"... что делать? Мои познания о программировании либо сугубо теоретически (методы, работа компилятора, нюансы чуть не на машинном уровне, которые на фиг ни кому не сдались), либо ограничиваются решением математических задачек. Я не знаю, что вообще в принципе может быть "проектом"( Я могу загуглить и разобраться, "как", но "что"? Даже поиск по гуглу привел ровно к тем же мат. задачкам. Да, для восстановления навыков я их покопаю, безусловно, но что с этим дальше-то делать? Единственное более-менее конкретное, что я знаю - это обсчитывание экспериментов в физике, для которых нужно, собственно, заниматься этой конкретной темой в физике, и моды для скайрима, за которые никто на еду не даст(


Nacry

А вот знаешь что. Просто ради любопытства. Небольшая вводная. Есть много сайтов и мобильных приложений, в которых можно посмотреть звёздное небо с названиями звёзд и созвездий, какие спутники над тобой в данное время пролетают. Так много доп опций в таких приложениях платные. Но, вся инфа, которые они используют в открытом доступе есть в интернете. Так возьми и создай такое приложение. Там и работу с текстовыми файлами разберёшься, и как делать запросы POST, GET, на некоторых сайтах найдёшь как использовать API, с графической оболочкой разберёшься. Тем более, как я понял, что с матаном и физикой у тебя норм, то ещё и интересно будет. Всяких Рунге-Куттов вспомнишь.


redhotchili87

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


lita

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

Я не могу сказвть, что прям "круто". Я вылетела из МФТИ по здоровью и долго болела( До этого школа при мгу, курсы всякие по Си при бауманке. И, в принципе, мне вот этого вот и нравилось. Задачки, обработка экспериментов, разбор работы компилятора. Вроде где-то на обрывке памяти что-то про драйвера есть, но очень мало.


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


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


korneev123123

Сложно найти абстрактное задание для чистого бека. Всегда интереснее учиться если можно глазками результат увидеть.


lita

Что такое "чистый бек"?

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

Я просто даже не знаю, куда потом это деть? Можно ли вообще на что-то похожее найти работу?

ещё комментарии 9


carbofoserman

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

* HTML/CSS для самой страницы

* JavaScript для сбора, подготовки и передачи данных от пользователя на сервер

* любой удобный язык вроде Python, Java, PHP для приема данных

* возможно SQL для сохранения данных или результатов в базу данных

* возможно C/C++ для высокопроизводительных вычислений по собственно необходимому нам алгоритму на CPU/GPU и т.п.


Направления в программировании сейчас делятся на

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

* бэкэнд - серверная часть, с помощью которой происходит обработка данных, сохранение, передача смежным сервисам.


Но я очень настойчиво обращаю внимание, что IT это не только программирование. Это огромный спектр специальностей среди которых

* тестирование (QA - quality assurance)

* администрирование серверов и прочее

* DevOPS

* сети
* сотовая связь

* IP телефония

* VOIP

* IP TV

К примеру,  если программирование - это однозначно не ваше, то есть смысл попробовать себя в тестировании: это когда тебе дается сайт или приложение и нужно по списку зайти в каждый уголок этого проекта и убедиться что фактическая функциональность соответствует ожидаемой. Если найден баг, то оформить отчет как этот баг надо повторить. Работа с очень низким порогом вхождения, как раз для тех, кто испытывает психологические проблемы чтобы допустить мысль сразу попробовать себя в программировании. Поработав некоторое время уже в IT тестировщиком, можно еще раз пересмотреть с нового ракурса мысль стоит ли пробовать себя в программировании. И даже если ответ однозначен что не стоит, в этой области есть куда расти и развиваться. Хорошие тестеры как и все хорошие специалисты тоже всегда в дефиците. Но для того чтобы стать хорошим тестировщиком все равно придется много читать и разбираться.


Большинство вышеперечисленных IT направлений при большой нужде могут выполняться удаленно, как в случае сегодняшней пандемии. Поэтому я рад буду помочь и ответить на вопросы в комментах. Уверен, где я не буду достаточно компетентен, подтянутся и другие пикабушники. Удачи вам в новом мире XXI века!

Вы смотрите срез комментариев. Показать все
2
Автор поста оценил этот комментарий

Ни один нормальный специалист не будет бесплатно плодить себе конкурентов. Закон жизни.

раскрыть ветку (42)
5
DELETED
Автор поста оценил этот комментарий

Так себе идея. Если ты "нормальный специалист", то до уровня конкуренции с тобой ньюфаги дойдут не скоро. Но ты к тому времени уже миллион новых технологий освоишь. Закон меня

раскрыть ветку (16)
2
Автор поста оценил этот комментарий

А смысла тратить свое время, кроме рекламы курсов, у спецов нет.

раскрыть ветку (15)
3
Автор поста оценил этот комментарий
Я не продаю никакие курсы. Смысл лишь в плюсиках на Пикабу.

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

Удаленная работа или фриланс это спасение.
раскрыть ветку (5)
3
DELETED
Автор поста оценил этот комментарий

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

раскрыть ветку (4)
Автор поста оценил этот комментарий
Конкретно у меня сейчас есть проект, который работает сам по себе. Доход получаю с рекламы. Пока все сидят дома, кликают на рекламу, я сижу дома, получаю бабло. Конечно же есть разные заказчики, разные ситуации. Меня моя устраивает.
раскрыть ветку (3)
1
Автор поста оценил этот комментарий

А доходы от рекламы у всех падают сейчас, люди перестали покупать товары. Посмотрим как оно будет.

1
DELETED
Автор поста оценил этот комментарий

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

раскрыть ветку (1)
Автор поста оценил этот комментарий

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

DELETED
Автор поста оценил этот комментарий

Смысл в тяге к созиданию. Быдлу не понять

раскрыть ветку (8)
Автор поста оценил этот комментарий

Ну. Весь интернет в созидателях.

раскрыть ветку (7)
DELETED
Автор поста оценил этот комментарий

Качество "спецов" и их творений - это уже другой разговор. Мы же о реальных спецах говорим

раскрыть ветку (6)
1
Автор поста оценил этот комментарий

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

раскрыть ветку (5)
DELETED
Автор поста оценил этот комментарий

У меня нет

раскрыть ветку (2)
Автор поста оценил этот комментарий

Жаль.

раскрыть ветку (1)
DELETED
Автор поста оценил этот комментарий

Открой ХАБР, например. Поищи в каком-нибудь lifejournal людей, типа этого https://sharpc.livejournal.com/67583.html
Кто ищет, тот найдет. А "спецов" учащих основам пистона всегда было многа и все они сыпались через неделю

Автор поста оценил этот комментарий

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

раскрыть ветку (1)
Автор поста оценил этот комментарий

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

В последнее время - да. Если я ошибся, то прошу прощения.

2
Автор поста оценил этот комментарий
Конкурентов можно не бояться. 1000 прочитает, 100 попробует, у 10 получится. Один из 1000 станет конкуретном. Но это не точно.
4
Автор поста оценил этот комментарий
Если хоть один из тысячи читателей поста изменит свою жизнь, я буду только рад за него. Если же я буду способен изменить жизнь тысячам людей, то с такой суперспособностью я точно не буду бедствовать.
раскрыть ветку (20)
1
Автор поста оценил этот комментарий

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

раскрыть ветку (19)
3
Автор поста оценил этот комментарий

Да никак, рынок уже заполонили вайтишники с 30. Наплодилось школ которые преподают Python за неделю js за 30 минут. Все думают что будут сидеть на пляже попивая махито и разрабатывая в своё удовольствие. Потом конечно приходит понимание что, что бы заниматься чем то интересным нужно угробить 10-20 лет постоянно уча что то новое, тратя свободное время, и думая о работе 24/7 а на работе искать очередной тупой баг и гонять джейсончики из апи в апи, выслушивая пожелания очередной совы. И самое страшное , что большенство так и останется на уровне скрапаю сайты за 10$ . Хотя уже так, привет индусам.

раскрыть ветку (15)
3
Автор поста оценил этот комментарий
Для начала надо определиться хочешь работу интересную или высокооплачиваемую. Если хочется и то и другое, то придется потратить время на поиски. Я не соглашался пока у меня были хоть какие то смущающие моменты. И работа оказалась интересной, именно моей.

„Всегда выбирайте самый трудный путь — там вы не встретите конкурентов.“ —  Шарль де Голль.
раскрыть ветку (13)
Автор поста оценил этот комментарий

Ради интереса , сколько нужно ходить джуну после курсов по собесам что бы выбрать то что нравится ему а не то что дают?

раскрыть ветку (12)
Автор поста оценил этот комментарий

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

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

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

раскрыть ветку (3)
Автор поста оценил этот комментарий

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

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

раскрыть ветку (2)
Автор поста оценил этот комментарий

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

раскрыть ветку (1)
Автор поста оценил этот комментарий
Согласен. Тогда стратегия должна быть такой: сделать портфолио из проектов на гитхабе, чтобы стать интересным. Это о многом говорит: умение использовать git, понимание групповой работы, умение сделать законченный проект, задействовать систему сборки проекта вроде cmake, maven etc.
раскрыть ветку (1)
DELETED
Автор поста оценил этот комментарий

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

Автор поста оценил этот комментарий
Джуну наверное выбирать надо лишь то, где есть у кого учиться, у кого отлажены процессы производства качественного ПО. Первые признаки такой конторы это использование системы контроля версий вроде git, это continuous development, continuous integration, это использование автоматических тестов, это сборка всего проекта с одного клика. При достаточном упорстве через полгода - год в такой конторе нуб сможет почувствовать себя человеком, написать в сиви много умных слов и позволить себе выбирать то что по душе.
раскрыть ветку (3)
DELETED
Автор поста оценил этот комментарий

Джуну выбирать?) Джуну выбирать сейчас не приходиться.. я в этом году провел с 20 собеседований мидлов/сеньеров ) джуны бы на первом вопросе бы посыпались... хотя и сеньеры сыпались на вопросах для джунов ) джуну надо цепляться за что получиться.. если получиться...

раскрыть ветку (2)
Автор поста оценил этот комментарий

я в этом году провел с 20 собеседований мидлов/сеньеров ) джуны бы на первом вопросе бы посыпались

Вы искали не джунов, вестимо. Другие могут искать.

Автор поста оценил этот комментарий

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


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

Автор поста оценил этот комментарий

Именно что.

1
Автор поста оценил этот комментарий
Я не начинающий, поэтому я не знаю что надо начинающему. Я пользуюсь знаниями, которые давно накопились с опытом. В процессе решения любой задачи приходится разбираться с вопросами, в которых понятия не имеешь. В нормальной конторе на это выделяют время. Поэтому у программиста преобладают не знания, а умение находить и быстро усваивать эти знания. Другими словами, надо уметь много читать, находить ответ на свою проблему и решать проблемы внимательно, кропотливо одну за другой.
раскрыть ветку (2)
Автор поста оценил этот комментарий
Привет! Подскажите, а тестировщиком как стать?
раскрыть ветку (1)
Автор поста оценил этот комментарий
Автор поста оценил этот комментарий

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

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

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

Не всем дано понять такой зов души.

1
DELETED
Автор поста оценил этот комментарий
Закон действует если ты ремонтник в маленьком городке.
Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку