LINUX.ORG.RU

Совет по выбору направления в IT

 , ,


0

4

Есть желание перейти в IT,какое лучше выбрать направление frontend или backend, мне 29 лет, по специальности Автомеханик.Какие можете дать советы, только без троллинга. Я вкурсе что сейчас происходит в it сфере,но я же не за месяц стану разработчиком,минимум 1 год на обучение - мне так кажется. А здесь вообще уместно задавать такие вопросы ? Или мне лучше поискать какие-то специальные форумы по it?


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

Фронт это JS и TS. Оба этих языка это одни из самых сложных языков на сегодняшний день. Фреймворк это реакт. Тоже очень сложная штука. На бэке подобных сложностей меньше. Исходя из этого можно посоветовать бэк. Язык выбирай тот, на который есть вакансии в твоём регионе. Посмотри на Go. Для начинающих очень хорошо подходит.

vbr ★★★★
()
Ответ на: комментарий от Rudy

Бэкэнд это:

  1. Знание языка. Ну это основа.
  2. Знание SQL.
  3. Знание основ HTTP.
  4. Знание нужных библиотек. Порой это сложней всего.
  5. Понимание предметной области.

Математика в нынешнем айти нужна на уровне 1 класса. Сложение знаешь — отлично. Умножение знаешь — гуру. Где-то иронизирую, конечно, но не очень.

vbr ★★★★
()
Последнее исправление: vbr (всего исправлений: 1)
Ответ на: комментарий от Rudy

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

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

annulen ★★★★★
()

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

sambo ★★
()
Ответ на: комментарий от vbr

Математика в нынешнем айти нужна на уровне 1 класса. Сложение знаешь — отлично. Умножение знаешь — гуру. Где-то иронизирую, конечно, но не очень.

А понимать, что такое логарифмичиеская сложность, можно со заниями 1 класса? Или при работе с js о такой херне не нужно заморачиваться?

rumgot ★★★★★
()
Последнее исправление: rumgot (всего исправлений: 1)
Ответ на: комментарий от annulen

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

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

rumgot ★★★★★
()
Последнее исправление: rumgot (всего исправлений: 1)
Ответ на: комментарий от Rudy

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

annulen ★★★★★
()
Последнее исправление: annulen (всего исправлений: 1)
Ответ на: комментарий от Rudy

Ориентироваться на то, что типа «популярно» сейчас не всегда путь самурая.

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

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

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

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

emorozov
()
Ответ на: комментарий от gruy

Очень странные,много где вообще не указана за, если в рублях то примерно сеньор python 150тыс,php - где то начинается от 50 тыс. Я если что то не из РФ

Rudy
() автор топика
Ответ на: комментарий от emorozov

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

Когда такое было?

Возможно в СССР, но в 90х, была уже Microsoft, и было понимание, что программисты это круто, и что если тащить то можно поехать в Америку и устроиться в программистом в крупную контору на большую зарплату.

fsb4000 ★★★★★
()
Ответ на: комментарий от Rudy

Да везде будут сложности. Где язык сложный, где библиотек нужно много знать, где процесс развертывания и сборки муторный (C++ / CMake), где какие-то еще специальные навыки нужны. Я бы не планировал на твоем месте плясать от того, где легче. Посмотри на количество, вакансий, почитай, что перспетивниее, выбирай и учи.

rumgot ★★★★★
()
Ответ на: комментарий от emorozov

@Rudy

Так вот, PHP — бесперспективный язык, популярность которого неизбежно будет идти на спад.

Да его уже лет сколько хоронят? Столько же, сколько и C++ или дольше? А вакансии то есть и есть.

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

А если учить что-то перпективное, но где сейчас нет вакансий, то что с этими знаниями делать?

rumgot ★★★★★
()
Ответ на: комментарий от fsb4000

Когда такое было?

В середине 90-х, когда я заканчивал школу. Возможно, где-то в Москве и было понимание. Я из глубочайшей провинции, нацреспублики. У нас никто не понимал про Microsoft и что программисты - это круто.

Это лет через 10, когда встретился с одноклассницами, они уже прямо говорили: «Какие же мы дуры, что пошли на менеджмент, какие же вы умные, мальчики, что стали программистами. А мы не понимали!»

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

emorozov
()
Последнее исправление: emorozov (всего исправлений: 1)
Ответ на: комментарий от Rudy

Да, господи, возьми посмотри на всё, и выбери то, что тебе лично нравится. Хотя бы как эстетически выглядят листинги в коде. Или брось монетку/кубик. А то ты так до морковкиного заговения будешь гадать.

Если ты начнёшь изучать PHP с прицелом на переход на Go, то во-первых твои знания PHP окажутся в Go практически бесполезны, во-вторых, зачем терять время?

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

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

emorozov
()
Ответ на: комментарий от Rudy

Из Казахстана ты ещё сможешь работать удалённо. Это и раньше было возможно, а с 2020-го года вообще норма. Поэтому не стоит ориентироваться только лишь на местный рынок вакансий.

emorozov
()
Ответ на: комментарий от Rudy

Golang junior которые с нуля, вообще вакансии нет.Рассматривают в основном у кого был опыт с Python или PHP

Допустим, на изучение PHP ты потратишь год. Уверен, что через год ситуация останется такой же? В IT отрасли всё меняется быстрее, чем где-либо.

emorozov
()
Ответ на: комментарий от Rudy

А понял.

И я бы брал лучше python, как более универсальный. И для бэкэнда, и для написания подручных скриптов (для админов / девопсов), для анализа данных, для машинного обучения, для десктопа (вместе например с Qt). Плюс: никто ему отмирание не пророчит. И вакансий много вообще везде (ну в смысле не везде, а много где).

rumgot ★★★★★
()
Последнее исправление: rumgot (всего исправлений: 1)
Ответ на: комментарий от Rudy

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

rumgot ★★★★★
()
Последнее исправление: rumgot (всего исправлений: 1)
Ответ на: комментарий от annulen

Нет, не перепутал. Я пока не встречал ни одного программиста, который бы знал JS. Про TS вообще не говорю, я его сам толком не знаю.

Что, он даже сложнее, чем C++?

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

vbr ★★★★
()
Ответ на: комментарий от rumgot

А понимать, что такое логарифмичиеская сложность, можно со заниями 1 класса?

Если ты хотел сказать «алгоритмическая» - то вряд ли.

Или при работе с js о такой херне не нужно заморачиваться?

Ну как сказать. Вроде бы и нужно. Но по факту на фронте всё, что больше 100 элементов будет тормозить. Так уж всякие фреймворки с браузерами устроены. Если нужно много элементов то сразу надо делать виртуализации и прочее. А на 100 элементах про алгоритмы чаще всего думать не надо. Дополнительно усложняет дело то, что ты пишешь как та принцесса - на куче перин и матрасов. Между тобой и процессором уйма нетривиальных прокладок, внутреннее устройство которых практически никто не знает. Вот недавно тема была на форуме - у человека a == b || a == c тормозило в 50 раз сильней, чем a == c || a == b для случая когда a == b, что вообще ничем кроме каких-то эвристических глюков интерпретатора объяснить нельзя. Как устроен реакт в плане алгоритмической сложности - уверен - знает очень мало кто.

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

vbr ★★★★
()
Ответ на: комментарий от vbr

Обычный трижды вложенный цикл for почему-то в 18/0.5 раз медленнее отрабатывал на js v8, чем питон. Я забил и не стал вообще что либо выяснять(хотя даже и не могу).

nionio35
()
Ответ на: комментарий от vbr

Я встречал много программистов на C++. C++ каждого из них был уникален и содержал море багов. Из этого я делаю вывод что ни один из товарищей с 10+ годами опыта C++ таки не знал.

peregrine ★★★★★
()
Ответ на: комментарий от vbr

Если ты хотел сказать «алгоритмическая» - то вряд ли.

Да, сложность алгоритма. Но именно логарифмическая сложность алгоритма. Ну да, ладно. Проехали.

rumgot ★★★★★
()
Последнее исправление: rumgot (всего исправлений: 1)
Ответ на: комментарий от peregrine

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

А TS поверх всего этого ещё и систему типов, на мой взгляд одну из самых продвинутых (и сложных) среди современных языков, добавляет.

В итоге получается, что программист на JS языка своего просто банально не знает. Какое-то подмножество знает и всё. Про TS вообще молчу, любые проблемы с типами решаем через any. Ну не знаю, как к такому относиться. Я лично так жить не могу и считаю, что если ты пишешь на языке, то надо его знать от начала до конца. Пусть без каких-то там супер-эзотерических нюансов, но просто сами фичи знать и уметь использовать надо.

К примеру с Java такого нет. Если человек на ней несколько лет писал, обычно он её знает полностью, в плане фич.

vbr ★★★★
()
Последнее исправление: vbr (всего исправлений: 5)