С нуля до оффера
195 subscribers
91 photos
34 videos
15 files
30 links
Тут о превращении из омежки в сигму-программиста 🦾💻

По вопросам : @kottik111_dev
Download Telegram
Ребятки, ну что, всем привет! 👋
Надеюсь, вы готовы к моему возвращению сюда :)

Для начала - подведу учебные итоги, а во втором посте уже расскажу подробнее обо всём

Должна покаяться: занималась не очень много…

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

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

Ещё недавно приобрела две интересные книжки по жабе👩‍💻
Там не просто основы должны быть, а прям глубокое, продвинутое ООП с паттернами, архитектурными приёмами и нетривиальными/сложными примерами кода


Пока что читаю книгу по ООП, вперед продвинулась немного, в начале новой информации не так уж много, но дальше, похоже, будет интереснее

Как дочитаю - обязательно дам своё ревью на книжку 🙂

Всем большое спасибо, что подписываетесь и следите за моим продвижением! 🫶

#отчет
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥123👍2
Ну а теперь расскажу, как прошли эти 1,5 недели моего отсутствия

Я за это время чуть не ☠️

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

Но самое прикольное было вот в чём:

1) Меня дважды кинул клининг
В первой компании бригадир получил травму, и они просто отказались ехать
Во второй компании сломалась машина для перевозки всей техники
Когда на третий день я, наконец, нашла клинеров - они оказались крысами 🐀

Они взяли с меня доп 💴 за мытьё посуды и уборку шкафов, но не поставили руководство в известность - тупо сунули деньги себе в карман

Если прям кратко они часть посуды помыли очень хуёво, сполоснули тупо водой и спрятали в шкаф, а 2 часть не стали мыть вообще, накрыли ее сверху парочкой чистых тарелок 🤷‍♂️

Когда я начала разбираться с руководством, оказалось, что они вообще не знали, что я что-то доплачивала 🤡

2) Для переезда пришлось подключать близких, и всю неделю у меня были "гости"
Во вторник они затопили соседей
(Я только заселилась, неделя прошла - а хозяйка уже орёт на меня 🫠)

3) В среду они засорили унитаз
Ремонт обошёлся в 7 тысяч

4) В пятницу приехала на старую квартиру забрать остатки вещей и обнаружила, что вся кухня обесточена
Во всех остальных комнатах всё работает, а там - нет
Увидела, что холодильник разморозился, всё из морозилки растаяло и потекло по кухне
Запах - как из ада 🔥

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

Не знаю, что за ретроградный Меркурий это был,
но я буквально каждый день ходила с дёргающимся глазом 👀

#личное
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯17😱51
19.05.2025

Ребятки, всем привет!
👋

Сегодня планировала продолжить внедрять MapStruct, но ментор отревьюил то, что я делала последние 1,5 недели
В целом код был написан нормально, но не обошлось без правок:

1⃣При получении клиента почему-то перестал отображаться заказ 😢

2⃣Напутала с кое-какой бизнес-логикой при обновлении заказа

3⃣Не получается удалить клиента у которого есть заказы, те же заказы с продуктами удаляются спокойно


Короче, сейчас пытаюсь все исправить и как разберусь с этими ошибками буду возвращаться к мапструкту 😕

Программировала сегодня: 2,5 часа ⌨️

Всем большое спасибо, что подписываетесь и следите за моим продвижением! 🫶

#отчет
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥75👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Это я все 1,5 недели уверяла ментора, что с проектом точно нет никаких проблем

Тем временем как работает мой код 🥲 :

#мемасики
😁17🤪2
20.05.2025

Ребятки, всем привет!
👋

Сегодня что-то сильно устала, поэтому пост-отчёт будет кратким

Разобралась со всеми(практически) ошибками, которые прислал ментор — всё(практически все😅) теперь работает нормально

Единственная проблема, которую ещё предстоит решить — это удаление продуктов
При удалении клиента, у которого есть заказы с продуктами - происходит ошибка
Оказалось, это связано с тем, что я использую @ElementCollection со связью через Map, а не как полноценную сущность
В этом случае 🎉 не управляет ProductEntity

Есть два варианта, как это можно разрулить:

1️⃣Сделать полноценную сущность-связь, которая будет связывать Order и Product

2️⃣Убрать к чёрту этот Map и сделать @ManyToMany (я над этим Map столько пыхтела, так что такой вариант мне точно не нравится!!!!)
НО тогда мы потеряем инфу о количестве продукта в заказе ❗️

Дополнительный 3️⃣ вариант:

GPT посоветовал использовать в @ElementCollection такую штуку — @OnDelete(action = OnDeleteAction.CASCADE)
(ну а кто я такая, чтобы отказать гпт-великому 😄)
Попробовала добавить эту аннотацию — она вроде как должна позволить базе самой удалять строки из order_product, даже если 🎉 этого не сделал
Но в итоге получила какую-то ошибку 🤡

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

Завтра надеюсь вернуться к MapStruct’у и наконец начать с ним чего-нибудь уже делать


P.S Даа, пост вышел прям кратким, сори 🤭


Программировала сегодня: 3 часа ⌨️

Спасибо большое всем, кто подписывается и следит за моим прогрессом! 🫶

#отчет
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥113👍1
21.05.2025

Ребятки, всем привет!
👋

Сегодня особо ничего интересного, увы, не было

Я дошла до MapStruct’а
Ещё раз прошлась по теории - законспектировала, что это такое, зачем он нужен и какие типы преобразований умеет делать
Посмотрела примеры кода и то, как он заменяет ручной маппинг
После этого начала пробовать его внедрять

В целом оказалось даже не так сложно
🔹🔹 была одна основная загвоздка 👇

У меня в сущности OrderEntity есть поле Map<ProductEntity, Integer> — это товар и его количество
А в ответе (OrderResponseDto) мне нужно возвращать List<ProductWithQuantity>, где отдельно лежат ID, название товара и количество


Раньше я писала цикл вручную: проходила по мапе, вытаскивала товар и количество, создавала объект ProductWithQuantity и добавляла его в список

Такие структуры MapStruct автоматически не преобразует, это не просто копирование полей, а трансформация из мапы в список

Для решения надо написать отдельный метод внутри маппера, который вручную проходит по мапе и собирает список нужных объектов - а потом подключить его к MapStruct’у

Ноооо я сегодня до этого не дошла 🙁
Буду уже завтра всё заканчивать :)

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

Программировала сегодня: 2 часа ⌨️

Всем большое спасибо, что подписываетесь и следите за моим продвижением! 🫶

#отчет
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10👍4
Media is too big
VIEW IN TELEGRAM
23.05.2025

Ребятки, всем
👋

Вчера не успела написать пост, так что сегодня отчёт сразу за два дня

Разбиралась с преобразованием из Map<ProductEntity, Integer> в List<ProductWithQuantity>

Как и планировала, написала отдельный метод в маппере — он вручную проходит по мапе и собирает список нужных объектов и этот метод я подключила к MapStruct’у

Часть ручного маппинга я сделала ещё в среду, а остальное как раз вчера
Но что-то программе не заладилось и всё вдруг пошло по одному месту…

Я ооочень долго ковырялась в ошибках — их вылезла куча, но основная проблема - маппинг просто не происходил 🥲

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

Он с ходу тоже не понял в чём затык
Сказал, что все гуд 😎 на первый взгляд и видимо надо покапаться самому

И вот, спустя время, он мне присылает, где была эта сраная клоунская ошибка 😡

А в чём именно была проблема - узнаете из видоса 🤭

Программировала вчера: 3,5 часа 💻

Программировала сегодня: 2 часа 💻

Всем большое спасибо, что подписываетесь и следите за моим продвижением!
🫶

#отчет
Please open Telegram to view this post
VIEW IN TELEGRAM
10🔥5👍1
У Антона вышел новый интересный видос
Завтра буду смотреть и вам советую глянуть 🐺🐺
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5
This media is not supported in your browser
VIEW IN TELEGRAM
27.05.2025

Ребятки, всем привет!
👋

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

Что успела за это время?

Исправила ту глупую ошибку, которая была последнем посте
А дальше ментор решил почему бы не усложнить мне жизнь? 🤨
И предложил в OrderService передавать сущность клиента не в отдельной строке, а сразу через MapStruct (Раньше в ручном маппинге клиент передавался напрямую через параметры)

И вот тут у меня снова голова пошла кругом 😩
Вроде все сделала с горем пополам, но ничего не работало…

Пришлось ОПЯТЬ подключать ментора и какую ошибку мы имеем в итоге?

ПРАВИЛЬНО! Ответ будет в видео 🤭

Но если вдруг вам лень смотреть — то у меня случилась какая-то непонятная хрень с MapStruct‘ом и пришлось добавить одну зависимость… и всё внезапно заработало 🤡

Ну а теперь начинается новый этап жизни - я заканчиваю практику и перехожу к теории ✍️

Вообще, к концу мая я уже должна была продвинуться куда дальше
Но, как обычно, жизнь подкидывает палки в колёса — и имеем, что имеем 🤷‍♀️

Теперь я сосредоточена только на теории по спрингу 🙂
Сегодня разбирала вопросы, которые скинул ментор, конспектировала и потихоньку стараюсь всё понять, осознать и начать учить

Программировала сегодня: 3,5 часа 💻

Всем большое спасибо, что подписываетесь и следите за моим продвижением! 🫶

#отчет
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥115
Please open Telegram to view this post
VIEW IN TELEGRAM
😁82🤡1
28.05.2025

Ребятки, всем привет!
👋

Я продолжаю заниматься теорией
Сегодня повторяла вчерашние вопросы и разобрала ещё несколько новых

Если честно, теория идёт так себе…
В том смысле, что суть вопроса я понимаю и даже могу объяснить как-то «по-тупому», но вот красиво изъясняться и излагать мысли на техническом уровне — сложновато…
Поэтому некоторые вопросы я не только стараюсь понять, но и просто зазубриваю 🤓

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

Программировала сегодня: 2,5 часа 🖥

Всем большое спасибо, что подписываетесь и следите за моим продвижением! 🫶

#отчет
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥92
Уважаемые господа-программисты и не только, у меня к вам вопрос: кто-нибудь ездил на поезде с собакой?

Если кто-то ездил — напишите, пожалуйста, как проходила ваша дорога, что стоит с собой взять и тд 🙏

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

Дорога в совокупности займёт два дня и я даже не представляю, как буду ехать с собакой…
Да и в принципе в самом поезде
Я последний раз ездила на нём в 18 году, и то около 9–10 часов, а тут два дня 😯

Чувствую, ждёт меня ой какое веселье 😃

Небольшой намек куда держу часть своего пути - сваты 4 сезон
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥102
09.06.2025

Ребятушки, всем приветос!
👋

Простите меня сердеШНО, что так долго не было постов…

С понедельника не могла сосредоточиться и хоть что-то написать 🥲

Для начала хочу подвести учебные итоги 👇

С прошлой пятницы по понедельник я не занималась 🤬, хотя планировала!!!! (В среду об этом будет отдельный пост)

На самом деле с понедельника было мало чего интересного - я, как и говорила изначально, занимаюсь сейчас только теорией 📝
В среду закончила проходиться по спринговой 👩‍💻 теории, а в четверг у меня был мок-собес с ментором

Прошло всё нормально: +- на все вопросы ответила, но кое-какие проблемки всё же были…

Например, на вопрос: «В чём разница между @Primary и @Qualifier?» - я ответила, но не смогла привести правильный пример, где и когда указывается каждая аннотация

Не смогла также ответить, в чём разница между методами в BeanPostProcessor и какой когда нужно использовать


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

После этого приступила к теории по Hibernate 🎉
Пока что успела разобрать 10 вопросов - на этих выходных как раз их потихоньку учила, завтра вернусь к тому, чтобы дальше идти по списку вопросов

Хочу немного откровенности: мне очень не нравится, как идёт прогресс
В последнее время занимаюсь мало, двигаюсь супер-медленно
😿
Честно - сильно отстаю

Надо что-то с этим делать, потому что такими темпами
К АВГУСТУ НА СОБЕСЫ НЕ ВЫЙДУ❗️❗️❗️

Очень завидую людям, которые стабильно пашут по 5–6 часов в день
У меня так в последние месяцы вообще не получается
😞
Ментор дал огроменный пендель и сказал из кожи вон лезть, но заниматься минимум по 4 часа, а лучше 5


С понедельника по воскресенье занималась - 16,5 часов 💻

Сегодня не занималась вообще- 🥲

Всем большое спасибо, что подписываетесь и следите за моим продвижением! 🫶

#отчет
Please open Telegram to view this post
VIEW IN TELEGRAM
10
Решила нагло спиздить украсть идею у Вадима 😏

ОБЪЯВЛЯЮ ЧЕЛЛЕНДЖ

С завтрашнего дня в течение 2 месяцев я обязуюсь:
заниматься по 5 часов ежедневно, за исключением одного выходного в неделю
В выходной я всё равно уделяю не менее 30 минут повторению ранее изученного

Если я провалю челлендж —
скину рандомному подписчику 5000 рублей
и заплачу ментору 30%
❗️❗️❗️от оффера, даже несмотря на то, что сейчас у нас индивидуальные условия, и я % от оффера не должна

Правила челленджа:

• Учиться каждый день по 5 часов
• Разрешён 1 выходной в неделю, но даже в этот день - 30 минут на повторение

Допустимые исключения, когда можно не соблюдать режим:

• Критическое состояние здоровья
• Уже заранее запланированные дела (например, перелёты или семейные мероприятия в июле)
• Нельзя добавлять новые отвлекающие активности, которые могут сбить график (исключение - проблемы со здоровьем)

Каждый день - отчёт в постах, чтобы сохранять контроль(наконец-то и посты будут выходить регулярно)

Если вдруг у вас тоже есть проблемы с производительностью, то предлагаю вместе следовать челленджу, может у кого-то появится мотивация) 🙂
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥222😁1😨1
10.06.2025

Ребятки, всем привет!
👋

Сегодня будет короткий пост)
Я очень много времени провела в машине в дороге, так что расписывать сил нет)

Ну что, 1 день челленджа выдался весьма трудным
Заниматься 5 часов еще то испытание…

По итогу час сегодня повторяла прошлый материал, остальные 4 часа продолжила разбирать новые вопросы по 🎉

Надеюсь завтра держаться в таком темпе будет уже попроще 😢

Занималась сегодня: 5 часов 💻

Всем большое спасибо, что подписываетесь и следите за моим продвижением! 🫶

#отчет
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥193
11.06.2025

Товарищи, всем привет!
👋

Мой челлендж активно продолжается — сегодня всё так же занималась 5️⃣ часов

Я практически закончила разбираться со всеми вопросами по 🎉
Остались буквально последние два:
⭕️Что такое @MappedSuperclass? Как она отличается от других стратегий наследования?
⭕️Как реализовать пессимистическую и оптимистическую блокировку?

Не все вопросы давались легко
На некоторые, мне кажется, я потратила неприлично много времени 😅
Очень тяжело шло объяснение про SessionFactory, @Embedded / @Embeddable, @EmbeddedId / @IdClass

Завтра по плану — доразобрать оставшиеся вопросы, повторить всю теорию иии пойти общаться с ботом от ментора

Он настроил специального "интервьюера", который спрашивает тебя по теории
Тк у меня есть платная подписка GPT, я смогу с ним общаться голосом и просто наговаривать ответы

Другие ученики уже успели его затестить и сказали, что он неплохой
Так что для такого заучивания-разбора теории — самое то 👍

Также ментор отсмотрел мои конспекты за эти дни и указал на вопросы, которые стоит расписать ещё подробнее (один из таких про уровни кэширования)

Занималась сегодня: 5 часов ⌨️

Всем большое спасибо, что подписываетесь и следите за моим продвижением! 🫶

#отчет
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11
Сегодня хотела вам рассказать почему на прошлой неделе у меня не получилось нормально позаниматься, но я решила не пугать вас опять своими дурными историями и поделиться чем-то хорошим(об этом расскажу завтра 😂)