white_dog

Пользователь

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

white_dog

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

Предлагаю закрепить тему в разделе, чтобы больше челики не плодили темки "c чего начать? что учить?  что выбрать?" ибо походу дотеры не умеют в GOOGLE

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

 

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

 

Хочешь выбрать свой первый язык программирования? Вот твой список, из которого тебе стоит выбирать:

 

C

С

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

Приблизительный строк до уровня "иду искать работу": 6 мес - 1 год. 

C++

С++

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

Приблизительный строк до уровня "иду искать работу": 2-4 года.

Java/C#

Java/C#

Если ты хочешь научиться качественному программированию, любишь чтобы все было структурировано, по полочкам, чтобы легко было разбираться в коде(то-есть читабельно),любишь много бить по клавишам, а также тебя интересуют бизнес задачи, серверная логика веб приложений, работа с базой данных, данные данные, НУЖНО БОЛЬШЕ ДАННЫХ, крупные компании и общение с людьми, много вакансий, денег, любишь смузи(я люблю), короче говоря если ты обычный, адекватный, не задрот, но с мозгами - тебе сюда.

Как выбрать между Java и C#? Все просто, в C# есть такие основные направления: веб для ентерпрайз, десктоп и Unity разработка игр, всяких графических, красивых приложений, VR и тому подобное. Java: веб для ентерпрайз или мобильная разработка. Так же после Java есть возможность сменить направление, выучив языки программирования на основе Java, такие как Scala(Big Data), Kotlin(моб разработка)(есть еще другие, но о них вы и сами можете почитать в интернете). Как язык Java старше, меньше фичь в языке(что вполне компенсируется разными библиотеками) чем в C#, но они оба решают одну и ту же задачу, поэтому можно просто на рандоме выбирать, тем более что перескочить с одного на другой - дело 1-2 недель.

Приблизительный строк до уровня "иду искать работу": 1-2 года.

JavaScript

JavaScript

Не советую изучать, как первый язык. Он достаточно сложен в понимании новичку, потратишь много времени для понимания простейших вещей, которые бы смог освоить на Java/C# в разы быстрее. При этом фреймворки на нем очень простые в понимании, тем более если ты сначала изучил Java/C#. Материала в интернете хоть жопой жуй, но слишком много мусора, поэтому без опыта не сможешь фильтровать тупость многих "учителей" с интернета.

Приблизительный строк до уровня "иду искать работу": 6 мес - 1 год. С учетом опыта проги: 1 - 6 мес.

Python

Python

Когда тебе говорят "изучай Python, вау классно, круто, изи, топ!", шли их "*****". Если ты не знаешь чем будешь заниматься - не знаю зачем тебе этот ЯП. Такой язык абсолютно точно нужно изучать, только когда у тебя конкретная задача/интересы, например: Big Data, какая-нибудь обработка сигналов и цифровых изображений, нейронные сети/ИИ, или ты просто ученый, которому не особо интересно вникать в кучу не понятных фишек программирования, а просто иметь при себе удобный и простой инструмент для решения, автоматизации своих задач - тогда да, тебе сюда. 

Приблизительный строк до уровня "иду искать работу": 6 мес - 4 года.

Ruby

Ruby

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

Приблизительный строк до уровня "иду искать работу": 6 мес - 1 год. 

PHP

PHP

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

Приблизительный строк до уровня "иду искать работу": 6 мес - 1 год. 

 

см. какие ЯП подходят под направления.

направление: языки

Веб: JavaScript, Java, C#, Ruby, Golang, Python, PHP, Scala, Kotlin

Игры: C, C++, C#, JavaScript, Rust

Десктоп: C#, Java, C++, Python.

Моб. приложения: Java, Kotlin, Swift, JavaScript, C#, C++.

Big Data: Python, Swift, Java, Scala, R.

Системное программирование: C, C++, Rust.

Искусственный интеллект: Python, Java, C++.

Блокчейн: любой язык

 

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

 

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

 

Полезные источники:

Книги можно загуглить за минуту и вам выдаст их названия и комментарии к ним. Просто пишешь "книги по + название языка/фреймворка"

 

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

 

В чем нужно разбираться помимо языков:

- network(сети), для веб разработчиков(протокол http основа веб программирования, остальные можно просто разобрать для полного понимания)

- алгоритмы и структуры данных (помогает думать, анализировать, оценивать решения задач)

- базы данных (тут вроде все ясно)

- разобраться в Virtual Machine, популярных ОС(windows/linux) (никто не знает, какой ОС вы будете пользоваться на работе, не кайф как-то прийти и быть потерянным, увидев первый раз ОС, которую вы никогда не юзали)

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

- google.com (тут вроде ясно roflanLico.png, научитесь самого себя спрашивать, что вы хотите узнать)

 

 

пишите что добавить, чтоб дополнил.

 

 

HiThere

Пользователь

Регистрация: 24.06.2016

Сообщения: 3470

Рейтинг: 2602

HiThere

Регистрация: 24.06.2016

Сообщения: 3470

Рейтинг: 2602

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

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

white_dog

Пользователь

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

white_dog

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

HiThere сказал(а):

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

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

Нажмите, чтобы раскрыть...

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

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

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

GribBomjevik

Пользователь

Регистрация: 30.08.2019

Сообщения: 2810

Рейтинг: 456

GribBomjevik

Регистрация: 30.08.2019

Сообщения: 2810

Рейтинг: 456

где 1эс? и хтмл? 

white_dog

Пользователь

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

white_dog

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

GribBomjevik сказал(а):

где 1эс? и хтмл? 

Нажмите, чтобы раскрыть...

извини, но если даже такое не разобрался как изучить, то тебе лучше на завод)

GribBomjevik

Пользователь

Регистрация: 30.08.2019

Сообщения: 2810

Рейтинг: 456

GribBomjevik

Регистрация: 30.08.2019

Сообщения: 2810

Рейтинг: 456

k4rj2 сказал(а):

извини, но если даже такое не разобрался как изучить, то тебе лучше на завод)

Нажмите, чтобы раскрыть...

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

NarGor

Пользователь

Регистрация: 11.10.2013

Сообщения: 1480

Рейтинг: 417

NarGor

Регистрация: 11.10.2013

Сообщения: 1480

Рейтинг: 417

k4rj2 сказал(а):

извини, но если даже такое не разобрался как изучить, то тебе лучше на завод)

Нажмите, чтобы раскрыть...

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

 

Можно добавить и Go, но в качестве первого языка мб спорно, палка о двух концах

white_dog

Пользователь

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

white_dog

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

NarGor сказал(а):

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

 

Можно добавить и Go, но в качестве первого языка мб спорно, палка о двух концах

Нажмите, чтобы раскрыть...

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

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

 

NarGor

Пользователь

Регистрация: 11.10.2013

Сообщения: 1480

Рейтинг: 417

NarGor

Регистрация: 11.10.2013

Сообщения: 1480

Рейтинг: 417

k4rj2 сказал(а):

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

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

 

Нажмите, чтобы раскрыть...

Что касается вариков, это лучше уже по рынку и вакансиям смотреть

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

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

 

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

white_dog

Пользователь

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

white_dog

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

NarGor сказал(а):

Что касается вариков, это лучше уже по рынку и вакансиям смотреть

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

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

 

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

Нажмите, чтобы раскрыть...

так? чекай

HiThere

Пользователь

Регистрация: 24.06.2016

Сообщения: 3470

Рейтинг: 2602

HiThere

Регистрация: 24.06.2016

Сообщения: 3470

Рейтинг: 2602

k4rj2 сказал(а):

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

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

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

Нажмите, чтобы раскрыть...

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

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

А то что ты знаешь из этих языков 3, нет, не знаешь, чтобы хорошо узнать язык нужно решать на нем энтерпрайз задачи хотя-бы минимум год МИНИМУМ на уровне мидла

После этого ты можешь сказать что да, я его знаю, а то что ты немножко покодил на 3х языках ничего не значит

white_dog

Пользователь

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

white_dog

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

HiThere сказал(а):

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

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

А то что ты знаешь из этих языков 3, нет, не знаешь, чтобы хорошо узнать язык нужно решать на нем энтерпрайз задачи хотя-бы минимум год МИНИМУМ на уровне мидла

После этого ты можешь сказать что да, я его знаю, а то что ты немножко покодил на 3х языках ничего не значит

Нажмите, чтобы раскрыть...

Боже не неси ерунды плз) 

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

На джс мб и легко стажором. От джавистов стажоров всетаки требуют знания и хорошее резюме. А не резюме в стиле «учу джаву, хочу развиваться, все»

немножко 6 лет, окей)

причем тут миддл, короче окей. 

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

NarGor

Пользователь

Регистрация: 11.10.2013

Сообщения: 1480

Рейтинг: 417

NarGor

Регистрация: 11.10.2013

Сообщения: 1480

Рейтинг: 417

k4rj2 сказал(а):

так? чекай

Нажмите, чтобы раскрыть...

Найс)

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

HiThere

Пользователь

Регистрация: 24.06.2016

Сообщения: 3470

Рейтинг: 2602

HiThere

Регистрация: 24.06.2016

Сообщения: 3470

Рейтинг: 2602

k4rj2 сказал(а):

уметь решать задачи это не тоже самое что знать язык.

Нажмите, чтобы раскрыть...

А что тогда значит знать язык? Знать его синтаксис? Ну дак я могу за пару дней выучить синтаксис того же си#, я его получается буду знать?

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

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

Знание твоих 5 языков = ничто, если ты не можешь на нем грамотно построить архитектуру и решать энтерпрайз задачи, не знаешь лучшие практики этого языка и популярные фреймворки

Вопрос к тебе тогда такой, какой смысл от этих знаний? 

white_dog

Пользователь

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

white_dog

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

HiThere сказал(а):

А что тогда значит знать язык? Знать его синтаксис? Ну дак я могу за пару дней выучить синтаксис того же си#, я его получается буду знать?

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

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

Знание твоих 5 языков = ничто, если ты не можешь на нем грамотно построить архитектуру и решать энтерпрайз задачи, не знаешь лучшие практики этого языка и популярные фреймворки

Вопрос к тебе тогда такой, какой смысл от этих знаний? 

Нажмите, чтобы раскрыть...

чем отличается asp от spring в архитектуре? рофл.

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

что сложного перейти с Java на Kotlin и писать все тоже самое, что писал на Java?

Java, Kotlin, Go,  C#, JS(совсем хило ок), Scala(ща учу). Мало?

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

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

Heisman

Пользователь

Регистрация: 14.06.2015

Сообщения: 438

Рейтинг: -6

Heisman

Регистрация: 14.06.2015

Сообщения: 438

Рейтинг: -6

лично мне больше интересно, за сколько времени реально влиться в веб програмирование с нуля?

и нужны ли матан в вебе? 

white_dog

Пользователь

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

white_dog

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

Heisman сказал(а):

лично мне больше интересно, за сколько времени реально влиться в веб програмирование с нуля?

и нужны ли матан в вебе? 

Нажмите, чтобы раскрыть...

в вебе нет точно. в вебе и универ не особо нужен. универ чисто для развития софт скиллов и мозга justsmile.png?1553740538

за год можно влиться через интернет

Meepka

Пользователь

Регистрация: 08.10.2012

Сообщения: 1928

Рейтинг: 465

Meepka

Регистрация: 08.10.2012

Сообщения: 1928

Рейтинг: 465

k4rj2 сказал(а):

Предлагаю закрепить тему в разделе, чтобы больше челики не плодили темки "c чего начать? что учить?  что выбрать?" ибо походу дотеры не умеют в GOOGLE

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

 

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

 

Хочешь выбрать свой первый язык программирования? Вот твой список, из которого тебе стоит выбирать:

 

C

С

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

Приблизительный строк до уровня "иду искать работу": 6 мес - 1 год. 

C++

С++

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

Приблизительный строк до уровня "иду искать работу": 2-4 года.

Java/C#

Java/C#

Если ты хочешь научиться качественному программированию, любишь чтобы все было структурировано, по полочкам, чтобы легко было разбираться в коде(то-есть читабельно),любишь много бить по клавишам, а также тебя интересуют бизнес задачи, серверная логика веб приложений, работа с базой данных, данные данные, НУЖНО БОЛЬШЕ ДАННЫХ, крупные компании и общение с людьми, много вакансий, денег, любишь смузи(я люблю), короче говоря если ты обычный, адекватный, не задрот, но с мозгами - тебе сюда.

Как выбрать между Java и C#? Все просто, в C# есть такие основные направления: веб для ентерпрайз, десктоп и Unity разработка игр, всяких графических, красивых приложений, VR и тому подобное. Java: веб для ентерпрайз или мобильная разработка. Так же после Java есть возможность сменить направление, выучив языки программирования на основе Java, такие как Scala(Big Data), Kotlin(моб разработка)(есть еще другие, но о них вы и сами можете почитать в интернете). Как язык Java старше, меньше фичь в языке(что вполне компенсируется разными библиотеками) чем в C#, но они оба решают одну и ту же задачу, поэтому можно просто на рандоме выбирать, тем более что перескочить с одного на другой - дело 1-2 недель.

Приблизительный строк до уровня "иду искать работу": 1-2 года.

JavaScript

JavaScript

Не советую изучать, как первый язык. Он достаточно сложен в понимании новичку, потратишь много времени для понимания простейших вещей, которые бы смог освоить на Java/C# в разы быстрее. При этом фреймворки на нем очень простые в понимании, тем более если ты сначала изучил Java/C#. Материала в интернете хоть жопой жуй, но слишком много мусора, поэтому без опыта не сможешь фильтровать тупость многих "учителей" с интернета.

Приблизительный строк до уровня "иду искать работу": 6 мес - 1 год. С учетом опыта проги: 1 - 6 мес.

Python

Python

Когда тебе говорят "изучай Python, вау классно, круто, изи, топ!", шли их "*****". Если ты не знаешь чем будешь заниматься - не знаю зачем тебе этот ЯП. Такой язык абсолютно точно нужно изучать, только когда у тебя конкретная задача/интересы, например: Big Data, какая-нибудь обработка сигналов и цифровых изображений, нейронные сети/ИИ, или ты просто ученый, которому не особо интересно вникать в кучу не понятных фишек программирования, а просто иметь при себе удобный и простой инструмент для решения, автоматизации своих задач - тогда да, тебе сюда. 

Приблизительный строк до уровня "иду искать работу": 6 мес - 4 года.

Ruby

Ruby

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

Приблизительный строк до уровня "иду искать работу": 6 мес - 1 год. 

PHP

PHP

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

Приблизительный строк до уровня "иду искать работу": 6 мес - 1 год. 

 

см. какие ЯП подходят под направления.

направление: языки

Веб: JavaScript, Java, C#, Ruby, Golang, Python, PHP, Scala, Kotlin

Игры: C, C++, C#, JavaScript, Rust

Десктоп: C#, Java, C++, Python.

Моб. приложения: Java, Kotlin, Swift, JavaScript, C#, C++.

Big Data: Python, Swift, Java, Scala, R.

Системное программирование: C, C++, Rust.

Искусственный интеллект: Python, Java, C++.

Блокчейн: любой язык

 

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

 

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

 

Полезные источники:

Книги можно загуглить за минуту и вам выдаст их названия и комментарии к ним. Просто пишешь "книги по + название языка/фреймворка"

 

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

 

В чем нужно разбираться помимо языков:

- network(сети), для веб разработчиков(протокол http основа веб программирования, остальные можно просто разобрать для полного понимания)

- алгоритмы и структуры данных (помогает думать, анализировать, оценивать решения задач)

- базы данных (тут вроде все ясно)

- разобраться в Virtual Machine, популярных ОС(windows/linux) (никто не знает, какой ОС вы будете пользоваться на работе, не кайф как-то прийти и быть потерянным, увидев первый раз ОС, которую вы никогда не юзали)

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

- google.com (тут вроде ясно roflanLico.png, научитесь самого себя спрашивать, что вы хотите узнать)

 

 

пишите что добавить, чтоб дополнил.

 

 

Нажмите, чтобы раскрыть...

Даже я человек с опытом в программировании ничерта не понял что же к чему относится.  Почему мне не учить js если я собираюсь заниматься фронтом? что мне учить c#  что ли? Странная логика

white_dog

Пользователь

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

white_dog

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

Meepka сказал(а):

Даже я человек с опытом в программировании ничерта не понял что же к чему относится.  Почему мне не учить js если я собираюсь заниматься фронтом? что мне учить c#  что ли? Странная логика

Нажмите, чтобы раскрыть...

ну я скорее со своей стороны говорю. Почему не учить? это совет, а не противопоказанность. Бтв изначально ты не знаешь чем ты хочешь заниматься в вебе например. А понять основы лучше на классических ооп языках, а потом учить js, если хочется фронт

Meepka

Пользователь

Регистрация: 08.10.2012

Сообщения: 1928

Рейтинг: 465

Meepka

Регистрация: 08.10.2012

Сообщения: 1928

Рейтинг: 465

k4rj2 сказал(а):

ну я скорее со своей стороны говорю. Почему не учить? это совет, а не противопоказанность. Бтв изначально ты не знаешь чем ты хочешь заниматься в вебе например. А понять основы лучше на классических ооп языках, а потом учить js, если хочется фронт

Нажмите, чтобы раскрыть...

то есть ты предлагаешь сначала учить условный C#, а потом уже уходить во фронтенд и учить js?

white_dog

Пользователь

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

white_dog

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

Meepka сказал(а):

то есть ты предлагаешь сначала учить условный C#, а потом уже уходить во фронтенд и учить js?

Нажмите, чтобы раскрыть...

если ты изначально нацелен учить фронт, то хз, мб и нет.

Но сомневаюсь, что челики с 10+ опытом фронтенда на джс, начинали с него. 

Да и вообще сомневаюсь, что много фронтеров на больше чем 5 лет задерживаются там и не хотят уйти в бек

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

Meepka

Пользователь

Регистрация: 08.10.2012

Сообщения: 1928

Рейтинг: 465

Meepka

Регистрация: 08.10.2012

Сообщения: 1928

Рейтинг: 465

k4rj2 сказал(а):

если ты изначально нацелен учить фронт, то хз, мб и нет.

Но сомневаюсь, что челики с 10+ опытом фронтенда на джс, начинали с него. 

Да и вообще сомневаюсь, что много фронтеров на больше чем 5 лет задерживаются там и не хотят уйти в бек

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

Нажмите, чтобы раскрыть...

как бы фронтенщик и так должен знать бекенд языки, не в той мере конечно сколько сам бекендер но должен знать. Если ты думашь что фронтенд это html, css и js. То у меня для тебя плохие новости. Но в первую очередь если ты идешь во фронтент ты должен знать это, а не c# или еще что то. Так как первое время тебе нужна будет верстка.  

white_dog

Пользователь

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

white_dog

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

Meepka сказал(а):

как бы фронтенщик и так должен знать бекенд языки, не в той мере конечно сколько сам бекендер но должен знать. Если ты думашь что фронтенд это html, css и js. То у меня для тебя плохие новости. Но в первую очередь если ты идешь во фронтент ты должен знать это, а не c# или еще что то. Так как первое время тебе нужна будет верстка.  

Нажмите, чтобы раскрыть...

что значит не c#, но должен знать бекенд NotLikeThis.png

что значит фронтер должен знать бекенд языки?NotLikeThis.png

 

а так да, фронтер это только html css js 

Meepka

Пользователь

Регистрация: 08.10.2012

Сообщения: 1928

Рейтинг: 465

Meepka

Регистрация: 08.10.2012

Сообщения: 1928

Рейтинг: 465

k4rj2 сказал(а):

что значит не c#, но должен знать бекенд NotLikeThis.png

что значит фронтер должен знать бекенд языки?NotLikeThis.png

 

а так да, фронтер это только html css js 

Нажмите, чтобы раскрыть...

Фронтендщик должен знать как работает бекенд, то есть как передаются данные с фронта на бек. Знать что такое рендер на сервере и на клиенте. И куча всего другого что связывает бекенд и фронтенд. Кто тебе сказал что фронтенд это только html css js? Покажи мне эту статью или видео, где ты это взял? 

white_dog

Пользователь

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

white_dog

Регистрация: 29.08.2019

Сообщения: 1697

Рейтинг: 38

Нарушения: 110

Meepka сказал(а):

Фронтендщик должен знать как работает бекенд, то есть как передаются данные с фронта на бек. Знать что такое рендер на сервере и на клиенте. И куча всего другого что связывает бекенд и фронтенд. Кто тебе сказал что фронтенд это только html css js? Покажи мне эту статью или видео, где ты это взял? 

Нажмите, чтобы раскрыть...

Фронтеру ща тупо выплевывается json с 4 видами методов, которые описываются в документациях апи. 

 

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