Всем привет. Я уже не раз начинал изучать программирование, причем путь начинался с С++, потом JavaScript, Java и Python. Сейчас мне для ВУЗа нужно изучать C++ и языки ассемблера, а для себя (я понимаю, что диплом и знания от ВУЗа настолько незначительны, что пора бы уже самому начать двигать себя вперед) я решил начать по новой изучать Java, только уже курсом, а не самостоятельно, как раньше я это делал. Зачастую я сталкиваюсь с большой проблемой при изучении любого языка - разбегаются глаза, что нужно изучить. Речь сейчас идет о таких вещах, как неизвестные слова в языке ( как бы это смешно не звучало ). Это знаете как: есть вот какая-то функция, которую ты вызываешь, ты знаешь, что она делает в итоге, где и как ее использовать, но ты не знаешь, что в целом она внутри делает, как она устроена и тд. В такие моменты начинается паранойя типа:" А вдруг упускаешь что-то действительно важное? А вдруг понимание этого даст тебе в будущем более простое осознание будущих знаний и тд?". Такие частые моменты сбивают с толку и уже начинаешь плохо впитывать знания, потому что внимание распыляется не на основную задачу, а на прочие вещи, и в конечном счете в голове остается каша, которая никак не способствует развитию. Нужно ли с таким бороться или это нормально, что хочешь все изучить досконально? Если нужно бороться, то как абстрагироваться от лишнего и сфокусироваться на главном без параноидальных мыслей об упущенном?
Daniel
9 уровень
Что делать, если теряешься в том, что нужно изучить?
Комментарии (18)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
EkaterinaLvova
5 марта 2021, 17:03
Я изучение java (да в целом программирования) постоянно для себя сравниваю с качанием мышц. Идеально выполнить упражнение ни сразу, ни в течение времени нельзя, идет постоянное совершенствование, новые ощущения появляются, результаты становятся видны. Но самое главное постоянство и программа. В данном случае программа это этот сайт с задачами, остается приложить постоянство от себя :)
Если стоять над штангой и раздумывать: Как лучше хват, может на 5 см руки ближе, а может линейкой замерить...? Тогда не будет результата. В программировании также идет. Вот задача - ищем решение для нее, не важно, что не идеальное, как получается, лишь бы работало и было понятно как идет процесс, что и откуда (ну хотя бы более-менее понятно).
У меня начался сегодня 4 месяц здесь на сайте, паники от кода меньше, да и на сам код по другому начинаю смотреть (хотя "тупки" над ерундой очень часто бывают), потихоньку начинаю на стороне задачки решать, пока простенькие (на Hakerrank есть легкий курс "30 Days of Code" - раз в сутки дается задача).
Главное постоянство и все используемые классы, методы потихоньку становятся как инструменты, и код потихоньку превращается из букво-циферного месива во что-то понятное.
+1
Александр Работает в безработный
4 марта 2021, 16:13
ну это ты зря так думаешь , в ВУЗе ты получишь фундаментальные знания , тем более изучая такие нмзкоуровневые языки , у тебя будет куча сокурсников с которыми ты можешь обсуждать проблемы . преподы , которые будут в живую объяснять и которым можно тут же и сразу задать вопрос ,если, что не понятно.
Пойми одно , как правильно заметил Justinian, невозможно охватить всё , нухно уловить суть, на начальном этапе нужно понять основные принципы программирования которые сводятся к одному , нужно одну большую задачу разбить на маленькие , затем маленькие ещё на маленькие и потихоньку решать эти маленькие задачи.
Вот и решай здесь эти маленькие задачки.
+1
Aleksei Software Engineer в Cisco Expert
5 марта 2021, 21:42
Это если ты учишься в хорошем универе. И ты поступил не потому, что так сказали родители. А потому что интересно и нравится. И ты уже понимаешь, что универ дает лишь направление, но многое зависит от самообразования. И у тебя есть адекватные преподы. Очень много факторов, в общем, влияют на качество образования.
+1
Daniel
6 марта 2021, 20:56
Качество обучения в моем ВУЗе на данный момент оставляет желать лучшего, поэтому сейчас я решил больше внимания уделить самообразованию.
0
Eduard Sharipov
4 марта 2021, 15:12
А чем С++ плох? Крутой язык.
0
Евгений Буш Программист в Компания Expert
4 марта 2021, 10:52
Заведи блокнотик. Пиши: за месяц пройду 10 уровней. Сегодня решу 5 задач. Если появляются мысли, что нужно еще что-то необъятное дополнительно узнать, говори себе нет, делать то, что в плане. Панику нужно контролировать, иначе размазывает.
+1
hidden #2322530
4 марта 2021, 12:32
ставить себе дедлайны в том, чего не знаешь, такое себе.
+2
Yulia
4 марта 2021, 22:40
30-40 уровни за месяц пройти не реально. По 5 задач в день реально решать только проходя первые два квеста.
0
Justinian Judge в Mega City One Master
5 марта 2021, 02:43
На работе есть такая штука как скрам, и по нему всегда будут ограничения по времени, это очень удобно, чтобы не тянуть резину в длинный ящик.
Дадут таску по ЯП, фоеймворку или технологии которые в гоаза не видел прежде, и получается. Дедлайн есть по тому что вообще не знаешь, решишь за день или год :)
В поане обучения это тоде полезный навык, уметь оценить воемязатраты, но дедлайн нужно делать адаптивный, с возможностью корректировок по ходу.
0
Justinian Judge в Mega City One Master
5 марта 2021, 02:50
Более чем реально и многие так проходят, у меня на все задачи по курсу + лекции ушло 68 дней (я отмечал дни в которых занимался), правда календарно ушло полгода, но я просто волынил и занимался другими активностями, работа, семья.
Скорость прохождения зависит от многих факторов, самый главный из которых свободное время. Хотя и других факторов хватает, поэтому это сугубо индивидуально и нельзя обобщать, у всех свой темп
0
Евгений Буш Программист в Компания Expert
5 марта 2021, 09:09
10 уровней, 5 задач - условно. Я про то, что с блокнотиком ты управляешь процессом, а не процесс управляет тобой.
+2
Justinian Judge в Mega City One Master
4 марта 2021, 09:14
Хороший вопрос.
Ты идешь по улице. Идешь. А ты знаешь артикул тротуарной плитки? Ее молекулярную структуру? Детальные эксплуатационные характеристики? Размеры в мм, вес и тд? Но ты же идешь! Как так-то? Как же ты можешь идти, а вдруг ты упускаешь что-то важное, и в молекулярной структуре или артикуле Код Да Винчи зашифрован чтобы предостеречь тебя от чего-то...
Или когда хочешь кушать, думаю в большинстве случаев ты даже не хочешь знать какими антибиотиками пичкали мясо, или какую таблицу Менделеева и лучшие достижения химпромышленности добавляли в бесцветную жижу с алибастра, чтобы она стала приятно пахнущей и вкусной цветастой вкусняшкой, которую кушаешь.
Во всех подобных случаях тебя не будет это волновать, поскольку ты сфокусирован на главной цели, тебя не интересует детали. Деталей квинтиллионы вокруг нас, жизни не хватит чтобы даже один кусочек плитки на 100% изучить с нуля ) А вокруг нас миллионы предметов, явлений.
Поэтому человек приспособился использовать абстракцию и инкапсуляцию, мы вешаем ярлыки, чтобы быстрее обрабатывать события и функционировать.
Ты можешь сказать "ты не понимаешь, это другое". Да, джава это возможно будущая профессиональная деятельность, и естественно как профессионал ты должен разбираться.
Но, есть несколько но.
Во-первых, ты должен объективно оценить когнитивные возможности как свои так и человека в принципе.
Давай вернемся к цифрам, в данным момент, через недельку выйдет 16-ая версия джавы.
16 x 4000 классов. В некоторых классах 10 000 строк кода.
+десятки огромезных фрейморков, это тысячи классов, сотни тысяч, если не миллионы строк кода.
+сотни, тысячи библиотек, десятки тысяч классов, миллионы и миллионы строк кода.
+различные технологии, инструменты, сотни самых основных инструментов, по каждому из которых документации, кода, сумасшедший объем.
+теория, в которой чтобы полностью разобраться надо монографии по математике и физике читать. Сотни и тысячи научных работа.
+ тысячи правил написания кода
+6
Justinian Judge в Mega City One Master
4 марта 2021, 09:22
И самое главное.
Все вышеперечисленное постоянно меняется, регулярно - очень кардинально и полностью меняется, что все что программист знал умел перед этим - можно в топку выбросить.
Часто конфликтирует друг с другом, технология А версии 8.4 не поддерживает технологию Б версии 3.1, но если добавить технологию В версии 5.4 то может и сработать.
И собственно вопрос.
Боясь упустить что-то важное, ты хочешь в голову забить весь интернет, и знания, которые формировали миллионы людей?
Цель благородная, но насколько это реалистично, думаю ты в глубине души догадываешься.
Нас с школы учат ограничивать глубину ныряния в знания.
Вот арифметика, нас учили и говорили "это римские цифры I, II, III, это арабские цифры 1, 2, 3"
Как думаешь, многим ли детям или даже математикам, пришла в голову мысль "мы же хотим разобраться что происходит? Значит нужно выучить латынь, арабский язык, чтобы понимать что такое арабская цифра или римская!".
Думаю мало кому.
Потому что пока человек будет изучать латынь, остальные выучат сложение, формулы, и начнут применять математику.
А этот человек станет специалистом по цифрам и их этимологии.
Поэтому ты должен самостоятельно научиться бороть свои страхи. Я понимаю почему они возникают, но ты должен осознавать - остановишься и начнешь копать в глубину - не сможешь идти вперед. А не сможешь идти вперед, толку от того что ты накопал, будет ноль. Где ты будешь применять? И что?
Я не говорю что не углубляться, но глубину погружения нужно ограничивать, в какой мере ты должен нащупать сам.
Самое главное - должно быть движение вперед, решать задачи, проходить теорию Непонятно? Спроси, есть раздел Помощь. Но ты должен лимитировать себя, чтобы походы вглубь занимали очень мало времени, а основное время уходило на основную активность - решание задач и прохождение лекций
+6
Justinian Judge в Mega City One Master
4 марта 2021, 09:29
+ программирование практическая отрасль, которая изучается итеративно.
Ты пишешь много кода (для этого у тебя есть джава раш), и постоянно будешь возвращаться к одним и тем же темам, постоянно.
Ты бы захотел упустить - но у тебя не получится это сделать.
А если ты к чему-то не будешь возвращаться, значит оно не приоритетно.
И так, итеративно, постоянными возвращениями к одним и тем же темам придет понимание вглубь, каждый новый заход к теме, ты будешь систематизировать свою практику, свои знания, в голове складываться картинка, ты будешь гуглить, читать статьи, что-то новое изучить и еще больше укреплять знания.
А если ты попытаешься не имея практики, просто с этим разбираться со стороны теории, если кратко, это будет фиаско )
Должен быть баланс, ты его должен найти.
Но самое главное - это движение вперед, если по ходу движения, тебе не хватает что-то конкретно - ты добираешь.
это уже твоя борьба, у каждого из нас своя подобная война )
программистом стать это путь который нужно пройти, это не самое тяжелое, а вот бороться с собой это да.
Фокусируйся на результате, убеждай себя, ставь себе мини дедлайны, решить столько-то задачек, пройти столько-то лекций или уровней.
Ну и проработай страхи.
Ты описываешь страх "я упущу", окей, давай представим, ты действительно упустил что-то важное. Что дальше? Что это для тебя значит, что ты будешь чувствовать, какая картинка видится в твоей голове в плане последствий и тд. +5
Serp2015 conceptor в Тольятти
4 марта 2021, 08:35
Хуже будет, когда потеряешься в том, что уже выучил. Программирование почему-то очень быстро забывается, пока учишь что-то новое, старое выветривается.
0
Alexander
4 марта 2021, 07:47
Это абсолютно нормальные ощущения. Java-стек сейчас настолько огромен, что невозможно объять необъятное и поначалу все выглядит реально страшно. Но нельзя что-то изучить, не применив это на практике. Решай задачи на джавараш (при этом совсем необязательно сидеть над каждой до упора - если что-то не идет, вполне можно изучать следующие темы и вернуться к сложной задаче потом). Дойдешь до 35го уровня - иди на стажировку и справляйся с задачами, которые будут ставиться там. Трудно сказать, будет ли этого достаточно, чтобы сразу найти работу разработчиком, но по крайней мере ты получишь хорошие представления о мире джавы, сможешь ходить по собеседованиям и при необходимости будешь самостоятельно работать над какими-то пробелами.
P.S: ну и вообще, стрессоустойчивость в этом деле очень важна. Сейчас есть мысли из серии "а вдруг я что-то важное упускаю", после практически неизбежных неудачных собеседований могут быть мысли "куда я вообще полез", потом могут быть коллеги, желающие самоутвердиться за счет новичка и т.д. Надо уметь абстрагироваться, это не менее важно чем решать задачи.
+1
Сергей Я Java Developer в DXC/Luxoft Expert
4 марта 2021, 06:36
Для этого и есть курсы, задача которых провести по списку технологий. С этим JR справляется на "ура".
0
VladimirMaster
4 марта 2021, 02:52
Все, что не используешь, забывается, по этой причине все не выучишь.
Двигайся вперед и не останавливайся и через n лет паззлы в твоей голове начнут складываться в определенную картинку.
Если нужно бороться, то как абстрагироваться от лишнего и сфокусироваться на главном без параноидальных мыслей об упущенном?
Сфокусируйся на задачах и двигайся вперед маленькими шагами. Не нужно распыляться, сосредоточься на решении задач. Представь, что ты на работе, тебе поступила таска и тебе необходимо ее выполнить(закрыть) во что бы то ни стало.
+2