Java кабала
الذهاب إلى القناة على Telegram
Рассказываю про мир Java разработчиков. Делюсь опытом. Обучаю Java По всем вопросам - @fonatik_kabal
إظهار المزيد8 980
المشتركون
-424 ساعات
-307 أيام
-15830 أيام
أرشيف المشاركات
8 980
Братишки, кто хочет помимо Java освоить фронт энд технологии, посмотрите канал моего хорошего знакомого: https://t.me/evstratov_online
С ним уже некоторые из вас знакомы - это с ним мы замутили интервью на ютубе) скоро сделаем еще что-нибудь интересное.
8 980
Гайз, для того, чтобы быть on the same page, мне нужно понимать, какой у вас возраст. Судя по тикток и вопросам в инсте большинство ещё в школе.
Я сделал ставку🤣 завтра выложу скрин и посмотрим, какое нихуя я выиграл
8 980
Если вы все еще думаете, что программирование, это неимоверно сложно, то подумайте о том, что синтаксис Java состоит из 50 слов из которых даже я некоторых не знаю, потому что никогда не использую.
Структура кода состоит всего из трех базовых вещей: класс, переменная, метод.
Все остальное - дело техники и углубления в изучение.
Если бы мы жили в 80х годах, я бы сказал, что программирование пиздец какое сложное. Но мы живем в 2021, и сейчас, чтобы решать рядовые задачи не нужно иметь семь пядей во лбу, или где там... Захотите стать рок звездой программирования - пожалуйста, углубляйте ваши знания, и решайте задачи, которые другие не могут решить. Вы будете топовым разработчиком. Но не всем это нужно. Многим, достаточно просто стать разработчиком и в ус не дуть.
Поэтому запомните, сегодня, стать разработчиком не сложнее, чем стать любым другим специалистом. Вы сможете решать рядовые задачи и приносить бабки бизнесу. Пока мы можем это делать - у нас есть работа. Программирование само по себе не имеет никакого смысла, если оно не решает какую-то проблему.
Поэтому не бздите ничего. Жизнь одна. Если хотите знать - учите. Нравится - делайте.
8 980
Давайте ка я немного расскажу вам про то, что такое git.
Сначала немного сухости из википедии: распределённая система управления версиями. Проект был создан Линусом Торвальдсом для управления разработкой ядра Linux, первая версия выпущена 7 апреля 2005 года.
Для чего же это нужно и как это работает?
Программисты пишут код. Пишут его где? Правильно - на компьютерах. Давайте подумаем, к каким проблемам это все приводит.
1. Ну, первая, пожалуй, самая очевидная - комп или еще хуже, жесткий диск могут наебнуться. Тогда мы потеряем все, над чем работали.
2. Я работаю над кусочком программы, а мой коллега работает над другим кусочком этой же программы, но очень часто случается так, что мы должны использовать кусочки кода друг друга. Мне нужны кусочки его кода, а ему кусочки моего. Но как сделать так, чтобы мой код, который находится на моем компьютере появился на его компьютере и наоборот? Очевидно, я должен каждый раз ему его как-то передавать, а он мне. Немного ебала, учитывая то, что мы меняем код по сто раз на день, и то, что я ему дал пару часов назад, может быть уже не актуальным. А теперь еще хуже - у нас целая команда разработчков, или еще хуже - целый трайб разработчиков (много команд). Все одновременно меняют кодовую базу. Это просто нереально что-то кому-то передавать.
3. Если мы работаем над одним участком кода одновременно, то у нас появляются конфликты. Я переделал строчку кода, а коллега ее и вовсе удалил. Что считается актуальным? Как это объединить в единое целое?
Эти проблемы решает "Система Контроля Версий". Git - это один из вариантов такой системы. Есть и другие, но git самый распространенный.
В системе контроля версий есть такое понятие как ветка.
Представьте, что вы разработчик, который начинает с нуля писать код. Вы накидали немного кода, и "сохранили" его в основную ветку (такая ветка называется master). Но эта ветка все равно пока что находится только у вас на компьютере. Тут приходят на помощь хостинги IT-проектов. Примеры таких хостингов: GitHub, GitLab, Bitbucket. Они позволяют загружать ваш код на сервера хостера, откуда ваш код может "скачать" любой ваш коллега. Делается это очень удобно - нажатием пары кнопок.
Супер, мы решили как минимум первые две проблемы. Теперь весь наш код хранится не только у нас на компьютере, а еще на серверах хостера + на компьютерах всех наших коллег. Так же мы в любой момент может обновиться и увидеть самый (почти) актуальный код.
Осталось решить последнюю проблему: проблема конфликтов. Git помогает решать эти благодаря тем самым веткам. Дело в том, что всегда существует главная ветка (master) - в которой находится рабочий код. Если мы хотим сделать какие-то изменения, то мы отводим новую ветку от master. Это будет точная копия главной ветки (короче, все равно что сделать копию проекта, и работать с копией, а не с основным проектом). В своей ветке вы делаете изменения, которые вам нужны и потом "сливаете" их в основную ветку. Этот процесс называется merge (мёрж). Гит за нас автоматически применит изменения из нашей ветки (копии) к основной ветки. И если вдруг случится так, что гит обнаружит, что код в основной ветки уже кем-то другим был изменен, то выдаст нам конфликт, и заставит его решить. И только после этого, мы сможем слить наши изменения в основную ветку.
Подробнее можно посмотреть тут: https://www.youtube.com/watch?v=PEKN8NtBDQ0&list=PLY4rE9dstrJyTdVJpv7FibSaXB4BHPInb
8 980
Неплохой ресурс для подготовки к собеседованию: https://javastudy.ru/reference/interview/
Там очень много различных вопросов на множество тем. НО! обратите внимание, что очень много тем - это гавно мамонта, которое уже никто не использует, и если вас будут это спрашивать, советую бежать с такого собеседования 😂
Например, такие вещи как JSP, JSF и Servlet уже не актуальны
8 980
Ответ на распространенный вопрос: "Что лучше, учти после 9го или пойти в 10й класс?"
Сложно сказать, что лучше. Тут все зависит от того, какую цель вы преследуете.
Если вы пойдете в колледж, то велика вероятность, что он вас порядком подзаебет и вы уже не пойдете в универ.
Опять таки, нужен вам диплом о высшем образовании или нет - решать вам.
Без диплома вы будете ограничены в некоторых моментах. Например:
- Поиск работы. Некоторые компании требую высшее образование
- Занимаемая должность. Чтобы занимать некоторые руководящие должности требуется высшее образование.
- Миграционные и релокационные визы для специалистов. Чтобы получить некоторые визы вам так же нужно высшее образование.
- и др. (поисследуйте сами)
Вот и смотрите сами.
Если вы считаете, что без высшего образования в будущем вы выстрелите себе в ногу и оно вам пригодится, тогда логичнее принять решение в его пользу.
Если же вы ок с этими ограничениями, и считаете, что оно вам не нужно, ну, тогда, принимайте соответствующее решение.
Проблема в том, что в будущее заглянуть нельзя, и никогда не знаешь, что тебе может пригодиться.
Если говорить про знания, то ни в колледже, ни в универе вы не получите адекватные знания. Один хрен, вам придется учиться самостоятельно. Однако тут хочу оговориться: и колледж и универ учат вас учиться. Они прививают хорошие навыки поиска и фильтрации информации, систематизации. В общем, из всего можно вынести пользу.
По итогу: это больше к вопросу социального одобрения, нежели каких-то реальных знаний. Никто не может вам дать знания, зато вы можете их получить. Какой инструмент использовать для их получения - решать вам.
8 980
Друзья! Кто хочет узнать меня немного поближе, но вам впадлу заходить в linkedin, предлагаю посмотреть 30 минутное интервью - https://www.youtube.com/watch?v=S40xF3spUKM
Да да, уже интервью берут, сам в ахуе.
Рассказываю, как я докатился до такой жизни, даю советы начинающим программистам.
Приятного просмотра. Захватите попкорн.
Так же, подписывайся на канал. Это не последняя наша совместная работа
8 980
Короче, я в ближайшее время проведу первую лекцию бесплатно. Любой желающий сможет поучаствовать и понять для себя норм ему или нет
8 980
Мои маленькие любители Java, работа над курсом в самом разгаре (2 дня уже нихуя не делал).
Сейчас мне нужно прикинуть, сколько потенциально человек хотят пройти обучение.
Обучение будет стоить примерно 25-30к руб. Будет зависеть от количества лекций. Я стараюсь ужать материал, но это не всегда получается.
Курс будет ориентирован на нулевых людей. По крайней мере, сейчас, пока я обкатываю лекции, люди с нулевыми знаниями все (почти) понимают.
Курс в целом будет разбит на две части: Java SE и Java EE.
Java SE будет включать в себя базовые вещи - синтаксис, основные конструкции, паттерны, концепции, стандартные библиотек, sql + практические задания. Так же будут небольшие проекты.
Java EE будет включать в себя работу с Spring, Spring Boot, ORM, Концепции микросервисной архитектуры и также практика и проект.
Ниже сделаю пост с голосованием.
8 980
Отличие JDK от JRE от JVM
JDK - Java Development Kit. Этот дистрибутив содержит в себе все остальные - JRE и JVM. Помимо этого, так же содержит компилятор и утилиты.
JRE - Java Runtime Environment. Отвечает за запуск и выполнение Java программ. Содержит в себе непосредственно сам JVM, Class Loader и стандартные библиотеки. Абстрагирует работу конкретной ОС.
JVM - Java Virtual Machine. Отвечает за работу Java приложений. Является интерпретатором байт кода в машинный код.
8 980
На каких ресурсах должны быть ваши профили?
Если вы хотите, чтобы предложений по работе было как можно больше, тогда у вас должны быть заполненные профили на следующих ресурсах:
1. https://hh.ru/
2. https://www.linkedin.com/
3. https://career.habr.com/
4. https://github.com/
Ресурсы указаны в порядке важности. Большинство оферов прилетает именно с hh.ru если ваше резюме открыто. На втором месте linkedin. Третье место хабр карьер. Я в свое время забыл про него, и у меня там был устаревший профиль. И я не понимал, какого черта рекрутеры предлагают мне позиции в Тольятти и Самаре 😄. Ну и да, некоторые рекрутеры смотрят на активность вашего github профиля.
8 980
Если вы боитесь алгоритмы, то пора с этим завязывать.
Для этого, с ними нужно просто поближе познакомиться.
Алгоритм - это просто заданная последовательность действий, не более.
В повседневной жизни вы каждый день с ними сталкиваетесь. Например:
Задача - поход на горшок:
1. Опустить стульчак
2. Снять штаны
3. Сесть
4. Потужиться
5. Все? если да, то идем дальше, если нет, возвращаемся на пункт 4
6. Вытереться
7. Смыть
8. Встать
9. Сильно зафакапили? Если да, идем на шаг 10, если нет, идем на шаг 11
10. Использовать ершик
11. Надеть штаны
В программировании все тоже самое, только без ёршика. Мы манипулируем данными. Наша задача - придумать такой алгоритм, который позволяет наиболее оптимально достичь желаемого результата.
Ведь сходить в туалет можно и с другим алгоритмом, например, не снимая штанов - что, мягко говорят, не очень оптимально.
Если у вас уже есть небольшой опыт написания кода, то можете попрактиковаться в написании простеньких алгоритмов на следующих ресурсах:
https://www.hackerrank.com/
https://www.codewars.com/
Лично я когда-то сидел на hacker rank. Там за каждую решенную задачу дают баллы. В зависимости от сложности получаете разное кол-во баллов. Есть общий мировой рейтинг. Очень прикольно в этом плане состязаться.
Алгоритмы это не страшно. Просто некоторые нужно знать, так сказать, заучить. Но чаще всего, вам они пригодятся только на собеседовании. Т.к. подобные вещи уже давно реализованы, и не нужно изобретать свой велосипед. Алгоритмы, которые вам предстоит придумывать, вероятнее всего будут ad hock алгоритмы, т.е. решения для конкретного случая.
8 980
Страхи у программистов 😱
Сегодня увидел интересный комментарий, в котором попросили рассказать про страхи программистов 😄
Мне будет сложно говорить за всех программистов, я могу сказать за себя и своих знакомых.
1. Наверное, самый большое страх это выгорание. Некоторые разработчики очень сильно фанатеют от того, что делают, из-за чего проводят по 12, а то и больше, часов за работой. И не важно, основная это работа, либо совмещение со своим проектом. Если работать в таком режиме 3-6 месяцев, то в конце концов очень сильно устаешь. Особенно, если не видишь результата.
Нужно себя чем-то отвлекать. Обязательно нужно какое-то хобби, которое отвлекает вас от программирования. Для меня это тикток.
Также, нужно прислушиваться к самому себе. Если чувствуете, что вас начинает "тошнить" - отвлекитесь. Делайте работу в минимально необходимом объеме, остальное время, посвятите чему-то другому. Никому не нужен выгоревший специалист.
2. Уронить прод😨😁, а еще хуже, потерять данные...
Расскажу на собственном примере. Я работаю в банке, и у нас все серьезно. Я отвечаю за каждый бит данных, которые мы получаем. Иногда, даже лучшие системы штормит, и приходится, так сказать, делать "операции на открытом сердце". Иногда, это просто плановое обновление софта или релиз новой функциональности. В любом случае, в эти моменты, я всегда держу руку на пульсе и слежу за всеми доступными мне метриками.
3. Ну и, пожалуй, третий страх - провалить собеседование в компанию, в которую ты очень хочешь. Это, конечно, не то чтобы страх, но всегда есть мандраж.
Мне кажется, это основные страхи, которые могут преследовать программистов. Буду очень рад, если в комментариях вы поделитесь своими страхами, связанными с вашей профессиональной сферой 😄
8 980
Что учить Java или Python? Что лучше?
Очень распространенный вопрос.
Нельзя сравнивать языки вне контекста решаемой задачи. Вы можете сделать сравнительный анализ, но сделать вывод из него и однозначно сказать, что лучше, а что хуже - нельзя!
Все решает контекст задачи, которую вы собираетесь решать.
Каждый язык, в силу своих особенностей, лучше подходит для решения тех или иных задач. В связи с этим, каждый язык обладает огромным количеством библиотек и фреймворков, которые, наилучшим образом помогают решить связанную с этим задачу.
Есть второй аспект проблемы - порочный круг. Хороший пример это Java. Когда люди начинают учить язык программирования, то многие выбирают Java, просто потому, что это наиболее востребованный и распространенный язык программирования. На нем работает огромное количество систем - начиная от микроволновки заканчивая банковскими и телеком системами.
В свою очередь, когда очередной бизнес уходит в онлайн, как думаете какой язык он выберет? Правильно, скорее всего Java, т.к. Java разработчиков очень много и их проще найти. А почему так? Потому что много людей выбирают Java, т.к. много вакансий, а вакансий много, потому что...
Это не значит, что в Java огромная конкуренция. Нет! Мы не могли найти разработчика полгода! Полгода Карл! И не потому что люди отказываются. А потому что мы не берем их, т.к. они не удовлетворяют нашим предпочтениям.
И это Java. Представьте, сколько мы должны отстегнуть, например, за хорошего C++ разработчика.
8 980
Друзья, спасибо большое всем, кто откликнулся! 🤗
В итоге я выбрал 4х кандидатов.
Не расстраивайтесь, если вы не попали в команду альфа-тестирования.
Я продолжу писать полезные посты здесь и параллельно готовить курс.
8 980
❗️Друзья, я планирую создать курс по Java и для этого необходимо сделать кучу материала.❗️
Для того, чтобы он был качественный и его могла понять даже мама в декрете, я хочу постепенно обкатывать новый материал.
Я хочу провести первую лекцию и мне нужны три добровольца, которые желают поучаствовать в этом 😃
Чтобы никого не мучал вопрос - все бесплатно.
Лекция будет проходить в Zoom. По длительности это будет ориентировочно 90 минут. По времени договоримся, но скорее всего вечер.
Все, кто хочет поучаствовать, пожалуйста, заполните форму https://forms.gle/CVTyLF1JBpTtajgL8
На основании данных из формы, я смогу сформировать группу наилучшим образом.
О чем будет первая лекция.
Я расскажу про основные концепции и термины, что такое Java, из чего она состоит и как запустить свою первую программу😀
Пререквизиты.
В идеале, участникам лекции нужно будет предварительно выполнить небольшое задание - установить Java и IDE. Я вышлю инструкцию о том, как это сделать.
Спасибо 😙
