Всем привет!
Сегодня я дошла ровно до 50 процентов курса по алгоритмам (сдала финальные задачи 3го спринта).
Этот спринт стал ощутимо сложнее двух предыдущих, главными темами были рекурсия и сортировка.
Первый раз решала задачу с комбинациями через рекурсию, рабочее решение вышло чуть ли не в 3 строчки, но до этого метод был почти на 50 строк😅 По итогу этими задачами осталась довольна)
Одна задача на отрезки почти повергла меня в отчаяние🙈 Там нужно было вывести соединенные отрезки или, наоборот, непересекающиеся (например, если даны 2-3, 6-10, 7-8, 7-8, то правильный ответ 2-3 и 6-10). Так сказать геометрия и визуализация не самые мои лучшие друзья, чертила, рисовала, пыталась решить.
Не помню сколько над ней просидела, но реально приходили мысли в голову бросить всё и уйти в водители автобуса (шучу 😁). Когда ее решила был такой выброс дофамина, что потом пару дней вообще что-то перетрудилась решая задачи и в итоге, наконец, устала и решила немного таймаут взять до понедельника)
Но видели бы вы, конечно, мой код в процессе решения😁 Настоящий путь самурая на костылях)
А ещё на днях, 28 марта, у меня был день рождения канала) 2 года👶💪
Сегодня я дошла ровно до 50 процентов курса по алгоритмам (сдала финальные задачи 3го спринта).
Этот спринт стал ощутимо сложнее двух предыдущих, главными темами были рекурсия и сортировка.
Первый раз решала задачу с комбинациями через рекурсию, рабочее решение вышло чуть ли не в 3 строчки, но до этого метод был почти на 50 строк😅 По итогу этими задачами осталась довольна)
Одна задача на отрезки почти повергла меня в отчаяние🙈 Там нужно было вывести соединенные отрезки или, наоборот, непересекающиеся (например, если даны 2-3, 6-10, 7-8, 7-8, то правильный ответ 2-3 и 6-10). Так сказать геометрия и визуализация не самые мои лучшие друзья, чертила, рисовала, пыталась решить.
Не помню сколько над ней просидела, но реально приходили мысли в голову бросить всё и уйти в водители автобуса (шучу 😁). Когда ее решила был такой выброс дофамина, что потом пару дней вообще что-то перетрудилась решая задачи и в итоге, наконец, устала и решила немного таймаут взять до понедельника)
Но видели бы вы, конечно, мой код в процессе решения😁 Настоящий путь самурая на костылях)
А ещё на днях, 28 марта, у меня был день рождения канала) 2 года👶💪
🔥20❤2
Всем привет!
На этой неделе углублялась в тему хешей и хеш-таблиц (тема 4го спринта на курсах по алгоритмам).
В качестве финальных заданий на проверку в одном нужно было реализовать свою хеш-таблицу с собственной хеш-функцией и разрешением коллизий. А в другом организовать поиск по документам, выдавая самые подходящие поиску документы.
С последним заданием провозилась несколько дней, было очень сложно. А до этого ещё пару дней даже не знала как и подступиться к решению)
В следующем спринте начнется тема с деревьями, видимо будут учить нас их крутить вертеть туда-сюда. Немного страшно 😁
Но официально 5й спринт стартует аж 5 мая, так что пока дорешаю необязательные задачки)
На работе период относительно скучных задач, самое сложное в которых понять формулировки ТЗ 😁
А у вас как дела?)
На этой неделе углублялась в тему хешей и хеш-таблиц (тема 4го спринта на курсах по алгоритмам).
В качестве финальных заданий на проверку в одном нужно было реализовать свою хеш-таблицу с собственной хеш-функцией и разрешением коллизий. А в другом организовать поиск по документам, выдавая самые подходящие поиску документы.
С последним заданием провозилась несколько дней, было очень сложно. А до этого ещё пару дней даже не знала как и подступиться к решению)
В следующем спринте начнется тема с деревьями, видимо будут учить нас их крутить вертеть туда-сюда. Немного страшно 😁
Но официально 5й спринт стартует аж 5 мая, так что пока дорешаю необязательные задачки)
На работе период относительно скучных задач, самое сложное в которых понять формулировки ТЗ 😁
А у вас как дела?)
🔥9❤2👍2😁1
Всем привет!)
Всех с прошедшими праздниками, успели ли отдохнуть?🤗
У меня идет потихоньку курс по алгоритмам к концу, вчера закрыла 5й спринт по деревьям и начала 6й по графам. Осталось 3 спринта, вместе с 6.
Деревья приятно удивили, я что-то до этого не лезла внутрь смотреть, как они устроены и работают, теперь немного получше их понимаю. Думаю после курса еще немного потренирую разные темы, почитаю книжки/статьи с разборами. Может к следующим тренировкам по алгоритмам смогу их решать быстро)
Не рассказывала, но не очень давно проходила собеседование для тренировки. Говорят полезно периодически практиковать этот навык и вообще узнать, как сейчас на рынке труда обстоят дела)
Совпало достаточно забавно, одним из вопросов меня попросили рассказать, как устроена хеш-мапа, а я как раз примерно днем раньше сдала свою кастомную реализацию хеш-мапы на 4м спринте с первой попытки)
В остальном, вопросы были вполне стандартные: ArrayList vs LinkedList, немного было вопросов с подвохом, где были кусочки кода и нужно было сказать, отработает или нет, что выведет на экран, немного на многопоточку было среди них.
Например, стандартный подвох на стримы:
где подвох в том, что peek не терминальная операция и ничего не будет выведено на экран, так как стримы ленивые.
Всех с прошедшими праздниками, успели ли отдохнуть?🤗
У меня идет потихоньку курс по алгоритмам к концу, вчера закрыла 5й спринт по деревьям и начала 6й по графам. Осталось 3 спринта, вместе с 6.
Деревья приятно удивили, я что-то до этого не лезла внутрь смотреть, как они устроены и работают, теперь немного получше их понимаю. Думаю после курса еще немного потренирую разные темы, почитаю книжки/статьи с разборами. Может к следующим тренировкам по алгоритмам смогу их решать быстро)
Не рассказывала, но не очень давно проходила собеседование для тренировки. Говорят полезно периодически практиковать этот навык и вообще узнать, как сейчас на рынке труда обстоят дела)
Совпало достаточно забавно, одним из вопросов меня попросили рассказать, как устроена хеш-мапа, а я как раз примерно днем раньше сдала свою кастомную реализацию хеш-мапы на 4м спринте с первой попытки)
В остальном, вопросы были вполне стандартные: ArrayList vs LinkedList, немного было вопросов с подвохом, где были кусочки кода и нужно было сказать, отработает или нет, что выведет на экран, немного на многопоточку было среди них.
Например, стандартный подвох на стримы:
List<Integer> list = Arrays.asList(0, 2, 4, 6, 8, 10);
list.stream().peek(System.out::println);
где подвох в том, что peek не терминальная операция и ничего не будет выведено на экран, так как стримы ленивые.
👍9🔥5❤2
Всем привет!
Последние две недели осваиваю графы. Если с деревьями решала задачи, в основном, с помощью рекурсии, то задачи на графы решаю симуляцией рекурсии😀
Научили в этом спринте, вместо запуска рекурсии использовать стек и поэтому получается, что задачи решаются итеративно, более наглядно и понятнее.
Потому что с деревьями, решив некоторые запутанные задачи рекурсией, оставалось небольшое ощущение, что магия какая-то происходит 😁
Хотя, конечно, перерисовав дерево можно было отследить ход алгоритма, но все-таки, в цикле мне намного понятнее отслеживать что происходит. Ощущение, что я полностью контролирую процесс, а не программа сама что-то себе придумывает 😁
Графы закончу и останется всего 2 спринта, динамическое программирование и алгоритмы на строки. Мне почему-то кажется, что на строки будут самые легкие задачи.
Пока по сложности тем и задач курса, для меня самые сложные были про хеши и деревья.
А у вас что нового? 🤗
Последние две недели осваиваю графы. Если с деревьями решала задачи, в основном, с помощью рекурсии, то задачи на графы решаю симуляцией рекурсии😀
Научили в этом спринте, вместо запуска рекурсии использовать стек и поэтому получается, что задачи решаются итеративно, более наглядно и понятнее.
Потому что с деревьями, решив некоторые запутанные задачи рекурсией, оставалось небольшое ощущение, что магия какая-то происходит 😁
Хотя, конечно, перерисовав дерево можно было отследить ход алгоритма, но все-таки, в цикле мне намного понятнее отслеживать что происходит. Ощущение, что я полностью контролирую процесс, а не программа сама что-то себе придумывает 😁
Графы закончу и останется всего 2 спринта, динамическое программирование и алгоритмы на строки. Мне почему-то кажется, что на строки будут самые легкие задачи.
Пока по сложности тем и задач курса, для меня самые сложные были про хеши и деревья.
А у вас что нового? 🤗
🔥12👍3❤2
Всем привет!
С началом лета! 🌞
Я все ещё прохожу курс по алгоритмам и сижу на финальных двух задачках 6го спринта. Первую решала всю прошлую неделю, теперь начала вторую решать. Что-то сложно 😅
Был на прошлой неделе созвон однокурсников с наставником, что-то в стиле ретро, где обсуждали у кого как идет, какие сложности и тому подобное.
Я поделилась, что немного побаиваюсь следующего спринта, там будет тема динамическое программирование.
На это наставник меня утешил и сказал: "Ты знаешь, динамика она либо дается, либо нет", мол, что ты переживаешь в самом деле, ну😂 Только мне кажется, что я больше ко вторым отношусь)
Последние полтора месяца мне осталось, потом уж не буду тут частить про алгоритмы 😁
Мысленно выбираю следующую жертву для погружения и изучения, думаю в сторону system design или углубиться ли в CI/CD, потренировать строить всякие пайплайны на гитлабе, а то я только на гитхабе это делала и уже относительно много времени прошло с последнего эксперимента, надо освежить в памяти)
С началом лета! 🌞
Я все ещё прохожу курс по алгоритмам и сижу на финальных двух задачках 6го спринта. Первую решала всю прошлую неделю, теперь начала вторую решать. Что-то сложно 😅
Был на прошлой неделе созвон однокурсников с наставником, что-то в стиле ретро, где обсуждали у кого как идет, какие сложности и тому подобное.
Я поделилась, что немного побаиваюсь следующего спринта, там будет тема динамическое программирование.
На это наставник меня утешил и сказал: "Ты знаешь, динамика она либо дается, либо нет", мол, что ты переживаешь в самом деле, ну😂 Только мне кажется, что я больше ко вторым отношусь)
Последние полтора месяца мне осталось, потом уж не буду тут частить про алгоритмы 😁
Мысленно выбираю следующую жертву для погружения и изучения, думаю в сторону system design или углубиться ли в CI/CD, потренировать строить всякие пайплайны на гитлабе, а то я только на гитхабе это делала и уже относительно много времени прошло с последнего эксперимента, надо освежить в памяти)
🔥8👍3⚡2😁2❤1
Всем привет!
Сегодня решила поделиться тем, что мне поднадоели алгоритмы 😁
Так как я уже почти прошла этот курс (осталось уже меньше месяца), могу поделиться впечатлениями о курсе в целом.
Мой вердикт: слишком интенсивно.
Если держаться в расписании 2х недельных спринтов, надо примерно на первой неделе решить 7-8 не самых легких, а иногда и самооценку-разрушающих сложных задач, чтобы перейти к решению финальных задач ко второй недели.
Они тоже очень варьируются по сложности. В одном спринте к финальным задачам был буквально псевдокод-решение, которое чуть подредактировать и проходило все тесты. Причем это дается раньше, чем сами задачи, то есть нельзя сначала попробовать решить самостоятельно, ведь сначала дается объяснение с подробным решением пусть немного не в полном синтаксисе, в стиле псевдокода.
Но все равно, пока разбираешься, откладывается и когда уже дойдешь до финального задания будет не сложно решить. А некоторые задачи прямо вообще отрываются от сложности типичных задач спринта куда-то в небеса (как было с финальными задачами на графы). После них, кстати, я какое-то время разочаровалась в своих способности вообще) Хотя все спринтовые задачки решила с легкостью.
В общем, такие качели в сложности. В объяснениях многие вещи хорошо поданы, но в теме с деревьями не очень.
В целом курс рекомендую, но думаю, что некоторые сложные спринты бы хорошо было растянуть на 3 недели. Потому что усталость накапливается и сейчас уже хочется в отпуск после этого курса 😅 (хорошо что он у меня скоро😁) Из плюсов, разобралась в темах, которые до этого сильно отпугивали (например, графы и деревья).
Еще из плюсов, должен быть под конец курса тренировочный собес на алгоритмы. Думаю скоро у меня уже будет, тогда поделюсь как все пройдет.
Сегодня решила поделиться тем, что мне поднадоели алгоритмы 😁
Так как я уже почти прошла этот курс (осталось уже меньше месяца), могу поделиться впечатлениями о курсе в целом.
Мой вердикт: слишком интенсивно.
Если держаться в расписании 2х недельных спринтов, надо примерно на первой неделе решить 7-8 не самых легких, а иногда и самооценку-разрушающих сложных задач, чтобы перейти к решению финальных задач ко второй недели.
Они тоже очень варьируются по сложности. В одном спринте к финальным задачам был буквально псевдокод-решение, которое чуть подредактировать и проходило все тесты. Причем это дается раньше, чем сами задачи, то есть нельзя сначала попробовать решить самостоятельно, ведь сначала дается объяснение с подробным решением пусть немного не в полном синтаксисе, в стиле псевдокода.
Но все равно, пока разбираешься, откладывается и когда уже дойдешь до финального задания будет не сложно решить. А некоторые задачи прямо вообще отрываются от сложности типичных задач спринта куда-то в небеса (как было с финальными задачами на графы). После них, кстати, я какое-то время разочаровалась в своих способности вообще) Хотя все спринтовые задачки решила с легкостью.
В общем, такие качели в сложности. В объяснениях многие вещи хорошо поданы, но в теме с деревьями не очень.
В целом курс рекомендую, но думаю, что некоторые сложные спринты бы хорошо было растянуть на 3 недели. Потому что усталость накапливается и сейчас уже хочется в отпуск после этого курса 😅 (хорошо что он у меня скоро😁) Из плюсов, разобралась в темах, которые до этого сильно отпугивали (например, графы и деревья).
Еще из плюсов, должен быть под конец курса тренировочный собес на алгоритмы. Думаю скоро у меня уже будет, тогда поделюсь как все пройдет.
🔥12👏6❤2👍1😁1
Всем привет!
Осталась я в двух задачах до конца курса по алгоритмам 🥳
После всяких страшно-звучащих топологических сортировок графов и пирамидальной сортировки, последний спринт посвящен строкам.
И знаете, что самое первое нам сказали, после почти 4х месяцев обучения?
Но под конец они добавили, конечно, сложных задач, которые объясняли всякими запутанными сочетаниями, в стиле:
После чего мозг немного сопротивлялся воспринимать информацию. 😁
Но ничего, осталось две финальные задачки и тестовый алго-собес и можно будет переключиться на другую тему. Думаю побольше углубиться в System Design. Попробую действовать по этой рекомендации и начну с Clean Architecture.
Так уж получилось, что в алгоритмы я начала вкатываться примерно по совету с того же канала (начала с "Грокаем алгоритмы", потом курс по алгоритмам, теперь в планах "Cracking coding interview" и натаскивание отдельных тем на Leetcode, но уже в спокойном режиме).
Поэтому думаю и в System Design буду погружаться тоже по его совету. Оставлю ссылки здесь, если кому-то это тоже интересно🤗
Осталась я в двух задачах до конца курса по алгоритмам 🥳
После всяких страшно-звучащих топологических сортировок графов и пирамидальной сортировки, последний спринт посвящен строкам.
И знаете, что самое первое нам сказали, после почти 4х месяцев обучения?
Необходимо приводить строки к одному регистру перед сравнением! 😱
Но под конец они добавили, конечно, сложных задач, которые объясняли всякими запутанными сочетаниями, в стиле:
каждая подстрока является суффиксом некоторого префикса
После чего мозг немного сопротивлялся воспринимать информацию. 😁
Но ничего, осталось две финальные задачки и тестовый алго-собес и можно будет переключиться на другую тему. Думаю побольше углубиться в System Design. Попробую действовать по этой рекомендации и начну с Clean Architecture.
Так уж получилось, что в алгоритмы я начала вкатываться примерно по совету с того же канала (начала с "Грокаем алгоритмы", потом курс по алгоритмам, теперь в планах "Cracking coding interview" и натаскивание отдельных тем на Leetcode, но уже в спокойном режиме).
Поэтому думаю и в System Design буду погружаться тоже по его совету. Оставлю ссылки здесь, если кому-то это тоже интересно🤗
Telegram
FAANG Master
Подготовка к System Design с нуля и для разных уровней
Эти книги и ресурсы пригодятся не только тем, кто готовится к собеседованиям в FAANG/Big Tech, но и тем, кто хочет развить свои навыки в architecture, software design и system design. Эти умения особенно…
Эти книги и ресурсы пригодятся не только тем, кто готовится к собеседованиям в FAANG/Big Tech, но и тем, кто хочет развить свои навыки в architecture, software design и system design. Эти умения особенно…
🔥14❤4👍4
Всем привет!
Сегодня завершила курс по алгоритмам🥳
А в понедельник у меня будет тестовый алгоритмический собес! Отпишусь потом как все пройдёт.
Вчера начала читать Clean Architecture, как книжку для начинающих в теме system design.
Кстати, есть один интересный репозиторий с разными заметками, теорией по разным темам. Есть там также и по system design.
Вот, например, подготовка к собеседованию по этой теме.
Сама ещё не полностью прочитала эту статью/заметку, пока таких собеседований не планируется на горизонте, но начало понравилось 👍
Сегодня завершила курс по алгоритмам🥳
А в понедельник у меня будет тестовый алгоритмический собес! Отпишусь потом как все пройдёт.
Вчера начала читать Clean Architecture, как книжку для начинающих в теме system design.
Кстати, есть один интересный репозиторий с разными заметками, теорией по разным темам. Есть там также и по system design.
Вот, например, подготовка к собеседованию по этой теме.
Сама ещё не полностью прочитала эту статью/заметку, пока таких собеседований не планируется на горизонте, но начало понравилось 👍
🔥10🎉6🍾4👍2
Всем привет!
Сегодня у меня прошло тестовое алгоритмическое собеседование🧑💻
Мне дали решать одну задачу уровня hard. Вот она на Leetcode.
За время собеседования я ее не решила, точнее итоговое решение при проверке в IDE не отработало. 🫠
Потом нашла ошибки и исправила, уже после собеседования, но осадочек остался, как говорится 😁
Начала там на Leetcode учебный план "150 задач с собеседований", поставила цель решать 1 в день. Буду продолжать оттачивать навыки, но уже в спокойном режиме☕
Сегодня у меня прошло тестовое алгоритмическое собеседование🧑💻
Мне дали решать одну задачу уровня hard. Вот она на Leetcode.
За время собеседования я ее не решила, точнее итоговое решение при проверке в IDE не отработало. 🫠
Потом нашла ошибки и исправила, уже после собеседования, но осадочек остался, как говорится 😁
Начала там на Leetcode учебный план "150 задач с собеседований", поставила цель решать 1 в день. Буду продолжать оттачивать навыки, но уже в спокойном режиме☕
LeetCode
Split Array Largest Sum - LeetCode
Can you solve this real interview question? Split Array Largest Sum - Given an integer array nums and an integer k, split nums into k non-empty subarrays such that the largest sum of any subarray is minimized.
Return the minimized largest sum of the split.…
Return the minimized largest sum of the split.…
🔥13👍9❤8
Всем привет!
Сегодня дочитала Clean Architecture. Ничто так сильно не мотивировало меня читать, как надпись в приложении, что книга доступна в подписке до конца недели😅
В книге много полезных идей, сделала себе много пометок и заметок.
Много про SOLID, очень подробно про архитектурные идеи, связанные с принципами SOLID, но с другими названиями.
Из минусов, много повторяющихся историй из 60-70х годов. Какая-то идея, сказанная и обоснованная в начале, обязательно встретится в середине и конце книги. Под конец уже чувство, что читаешь одно и тоже снова и снова.
Понравилась идея про (микро)сервисы (читала в оригинале, поэтому перевод от официального может отличаться):
В тему приводился пример, когда добавляется, условно говоря, поле в ДТО и мы из-за этого должны в 3х сервисах делать изменения - это говорит о тесной связанности сервисов и возможно эти сервисы были разделены зря. Возможно какое-то действие нужно вынести в отдельный компонент системы, который будет работать с этим ДТО, а не связывать несколько сервисов, только усложняя разработку.
У нас кстати на проекте есть такое, но я вам этого не говорила😁
*Dependency Rule вместо Dependency Inversion из SOLID, но в целом о том же, только на уровне приложения.
Сегодня дочитала Clean Architecture. Ничто так сильно не мотивировало меня читать, как надпись в приложении, что книга доступна в подписке до конца недели😅
В книге много полезных идей, сделала себе много пометок и заметок.
Много про SOLID, очень подробно про архитектурные идеи, связанные с принципами SOLID, но с другими названиями.
Из минусов, много повторяющихся историй из 60-70х годов. Какая-то идея, сказанная и обоснованная в начале, обязательно встретится в середине и конце книги. Под конец уже чувство, что читаешь одно и тоже снова и снова.
Понравилась идея про (микро)сервисы (читала в оригинале, поэтому перевод от официального может отличаться):
Архитектура системы определяется границами, отделяющими высокоуровневую логику от низкоуровневых деталей, и подчиняется Dependency Rule*. Сервисы, которые просто разделяют поведение приложений, представляют собой не более чем дорогостоящие вызовы функций и не обязательно имеют архитектурное значение
В тему приводился пример, когда добавляется, условно говоря, поле в ДТО и мы из-за этого должны в 3х сервисах делать изменения - это говорит о тесной связанности сервисов и возможно эти сервисы были разделены зря. Возможно какое-то действие нужно вынести в отдельный компонент системы, который будет работать с этим ДТО, а не связывать несколько сервисов, только усложняя разработку.
*Dependency Rule вместо Dependency Inversion из SOLID, но в целом о том же, только на уровне приложения.
🔥4❤1👍1😁1
Всем привет!
Прошло две недели с того, как закончились курсы по алгоритмам и я поймала себя на мысли, что хочу снова на какой-нибудь курс😅
В выходные пассивно выбирала, листая разные курсы по CI/CD и Kubernetes, но пока не выбрала)
Еще с середины августа планирую прочитать Designing Data-Intensive Applications, до этого уже несколько раз начинала ее читать и дальше середины не доходила. В этот раз планирую начать с начала и за месяц ее прочитать.
Так сложилось, что у меня появится она в аудио-формате примерно в середине августа и я смогу читать в любимом режиме (под аудиокнигу).
А в остальном, потихоньку прохожу задачки из Top Interview 150, пока решила 13)
А у вас как дела?🤗
Прошло две недели с того, как закончились курсы по алгоритмам и я поймала себя на мысли, что хочу снова на какой-нибудь курс😅
В выходные пассивно выбирала, листая разные курсы по CI/CD и Kubernetes, но пока не выбрала)
Еще с середины августа планирую прочитать Designing Data-Intensive Applications, до этого уже несколько раз начинала ее читать и дальше середины не доходила. В этот раз планирую начать с начала и за месяц ее прочитать.
Так сложилось, что у меня появится она в аудио-формате примерно в середине августа и я смогу читать в любимом режиме (под аудиокнигу).
А в остальном, потихоньку прохожу задачки из Top Interview 150, пока решила 13)
А у вас как дела?🤗
LeetCode
Top Interview 150 - Study Plan - LeetCode
Must-do List for Interview Prep
🔥7👍2❤1
Всем привет!
Решила составить оглавление для своего канала по темам.
Технические посты с гайдами и теорией:
Что такое Optional
Что такое сервлет
Знакомство с Vaadin
Что такое докер
Как устроена HashMap и HashSet
Знакомство с Kafka
Что такое Spring Security
Что такое Json Web Token
Что такое CORS
Что такое OAuth 2
Что такое проблема "n + 1" и как ее решать
Интересный факт о Hibernate и аннотации Lob
О дженериках
Настраиваем запуск Liquibase в docker-compose
Уровни кэша в Hibernate
Настраиваем Github Actions
Применение паттерна Стратегия при чтении данных с Excel
Особенности Hibernate 6 в сравнении с предыдущей версией
Разбиваем SQL запросы с WHERE .. IN (..) на партиции
Ограничиваем память java heap в тестах через Maven plugin
Рубрика под названием "Делаем кривыми руками":
Настраиваем Feign клиент
Покоряем @EmbeddedId
Используем ZipInputStream
Рекомендации / отзывы / полезное:
Бесплатный курс со stepik, Java Middle от МТС
Правильное использование @Transactional
Spring Security in Action
Курсы по Кубернетису
Design Patterns от Head First
Designing Data-Intensive Applications
Мотивационные:
Что меня мотивирует
Оценка личной производительности
Разные события:
День рождения канала
Пост на окончание курса Java-разработчик
Комикс о моем обучении на курсе Java-разработчик
*Будет дополняться
Решила составить оглавление для своего канала по темам.
Технические посты с гайдами и теорией:
Что такое Optional
Что такое сервлет
Знакомство с Vaadin
Что такое докер
Как устроена HashMap и HashSet
Знакомство с Kafka
Что такое Spring Security
Что такое Json Web Token
Что такое CORS
Что такое OAuth 2
Что такое проблема "n + 1" и как ее решать
Интересный факт о Hibernate и аннотации Lob
О дженериках
Настраиваем запуск Liquibase в docker-compose
Уровни кэша в Hibernate
Настраиваем Github Actions
Применение паттерна Стратегия при чтении данных с Excel
Особенности Hibernate 6 в сравнении с предыдущей версией
Разбиваем SQL запросы с WHERE .. IN (..) на партиции
Ограничиваем память java heap в тестах через Maven plugin
Рубрика под названием "Делаем кривыми руками":
Настраиваем Feign клиент
Покоряем @EmbeddedId
Используем ZipInputStream
Рекомендации / отзывы / полезное:
Бесплатный курс со stepik, Java Middle от МТС
Правильное использование @Transactional
Spring Security in Action
Курсы по Кубернетису
Design Patterns от Head First
Designing Data-Intensive Applications
Мотивационные:
Что меня мотивирует
Оценка личной производительности
Разные события:
День рождения канала
Пост на окончание курса Java-разработчик
Комикс о моем обучении на курсе Java-разработчик
*Будет дополняться
🔥11❤🔥3❤3
Всем привет!
Сегодня расскажу про несколько планируемых активностей.
Во-первых, появилась идея создать свой курс для джавистов уровня стажёров (не зря же у меня 2 педагогических образования😁).
Планирую сделать немного теории, проверяемые задания и практические воркшопы в записи. Курс собираюсь сделать бесплатным на Stepik.
Думаю практическим заданием будет разработка проекта, в котором будет реализация не простого CRUD, а какой-нибудь нетривиальной бизнес логики. Уже есть идеи на импорт и экспорт из/в Excel, поиск с кучей фильтров, подключение Keycloak, Liquibase и ещё много всего нужного🧑🎓
Дело не быстрое, пока знакомлюсь с платформой, составляю план и скоро приступлю к реализации. 🧑💻
Вторая активность начнётся с конца следующей недели - начну читать Data-Intensive Applications, хочу прочитать ее примерно за месяц. Без сроков у меня часто технические книжки откладываются и потом тяжело вливаться в контекст.📖
А про третью активность расскажу чуть позже, когда уже можно будет сказать получилось или нет и тогда порефлексировать над ошибками)
Сегодня расскажу про несколько планируемых активностей.
Во-первых, появилась идея создать свой курс для джавистов уровня стажёров (не зря же у меня 2 педагогических образования😁).
Планирую сделать немного теории, проверяемые задания и практические воркшопы в записи. Курс собираюсь сделать бесплатным на Stepik.
Думаю практическим заданием будет разработка проекта, в котором будет реализация не простого CRUD, а какой-нибудь нетривиальной бизнес логики. Уже есть идеи на импорт и экспорт из/в Excel, поиск с кучей фильтров, подключение Keycloak, Liquibase и ещё много всего нужного🧑🎓
Дело не быстрое, пока знакомлюсь с платформой, составляю план и скоро приступлю к реализации. 🧑💻
Вторая активность начнётся с конца следующей недели - начну читать Data-Intensive Applications, хочу прочитать ее примерно за месяц. Без сроков у меня часто технические книжки откладываются и потом тяжело вливаться в контекст.📖
А про третью активность расскажу чуть позже, когда уже можно будет сказать получилось или нет и тогда порефлексировать над ошибками)
🔥12❤7⚡5👍4❤🔥1
Всем привет!
Последние пару недель не получилось особо начать ни один из планов поста выше, так что нечем было поделиться🫣
Зато сегодня пришло приглашение на митап по Keycloak, может кому тоже будет интересно.
Я правда буду смотреть в записи (там есть возможность попросить запись).
На работе у нас планируется два параллельных воркшопа. Один по Kubernetes, другой по применению RAG. Очень жду) Возможно поделюсь какими-то общими вещами на тестовых примерах здесь, если можно будет по NDA.😉
Последние пару недель не получилось особо начать ни один из планов поста выше, так что нечем было поделиться🫣
Зато сегодня пришло приглашение на митап по Keycloak, может кому тоже будет интересно.
Я правда буду смотреть в записи (там есть возможность попросить запись).
На работе у нас планируется два параллельных воркшопа. Один по Kubernetes, другой по применению RAG. Очень жду) Возможно поделюсь какими-то общими вещами на тестовых примерах здесь, если можно будет по NDA.😉
ecom-tech.timepad.ru
ecom.teсh x keycloak community meetup / События на TimePad.ru
Поговорим о том, как устроены современные подходы к аутентификации и защите доступа. Разберём, почему компании переходят от паролей к SSO и как Keycloak помогает автоматизировать управление доступами. Погрузимся в механику Kerberos, чтобы понимать, как он…
👍5🔥3❤🔥2❤2🤝1
Всем привет!
Вам приходилось специально убавлять память (Java heap) для тестов при запуске через Maven? Чтобы, например, отловить какой-нибудь непроизводительный тест?
Если вы, как и я до сегодняшнего дня, не знали, как это можно сделать, сейчас поделюсь.
У нас случился пятничный коллапс на gitlab, падали сборки с OutOfMemory при тестах, а локально всё по классике работало.
Поэтому пришла идея локально ограничить память, чтобы найти виновника.
Для этого нужно добавить в плагин maven-surefire-plugin в тег configuration строку:
Это будет означать что будет выдано 256 мегабайт памяти. Таким образом, локально получилось воспроизвести и найти виновника🤓
Вам приходилось специально убавлять память (Java heap) для тестов при запуске через Maven? Чтобы, например, отловить какой-нибудь непроизводительный тест?
Если вы, как и я до сегодняшнего дня, не знали, как это можно сделать, сейчас поделюсь.
У нас случился пятничный коллапс на gitlab, падали сборки с OutOfMemory при тестах, а локально всё по классике работало.
Поэтому пришла идея локально ограничить память, чтобы найти виновника.
Для этого нужно добавить в плагин maven-surefire-plugin в тег configuration строку:
<argLine>-Xmx256m<argLine>
Это будет означать что будет выдано 256 мегабайт памяти. Таким образом, локально получилось воспроизвести и найти виновника🤓
🔥7👍6✍2❤🔥1
Всем привет!
Вам бывает сложно начать что-то делать?)
Практически месяц назад я написала о том, что запланировала сделать свой курс на Stepik. И только сегодня, я, наконец, его начала.
Поделюсь, что помогает мне, а вы делитесь в комментариях, кому что помогает 🙏
Для учебных целей, я часто пишу о своих планах здесь и потом меня заставляет мысль это делать, потому что уже рассказала людям, что буду. Но это частный случай.
Самый частый случай у меня бывает со скучными задачами. Их бывает очень сложно начать. Для меня просто ни в какую не хочется делать задачу, если знаешь, что там будет нудно или скучно.
Кстати, самые скучные задачи для меня копипастные или около того. Где надо сделать что-то, что было уже сделано, по образцу - копировать, вставить, заменив пару строк различий.
Дело на пятнадцать минут, собраться это сделать может занять пару часов 🫣
Что мне помогает:
* Прочитать задание / описание (мозг волей неволей начинает обдумывать и продумывать решение)
* Включить в фоне видео (что-то что можно слушать, больше чем смотреть), либо музыку (очень подходит, например, такое радио)
* Написать первую строку, что-то для выполнения. Создать ли новый класс или найти нужный метод.
Ведь самое сложное в этом случае начать, а уже потом всё не так страшно и уже и не так скучно ☺️
А у вас есть лайфхаки? ✍️
Вам бывает сложно начать что-то делать?)
Практически месяц назад я написала о том, что запланировала сделать свой курс на Stepik. И только сегодня, я, наконец, его начала.
Поделюсь, что помогает мне, а вы делитесь в комментариях, кому что помогает 🙏
Для учебных целей, я часто пишу о своих планах здесь и потом меня заставляет мысль это делать, потому что уже рассказала людям, что буду. Но это частный случай.
Самый частый случай у меня бывает со скучными задачами. Их бывает очень сложно начать. Для меня просто ни в какую не хочется делать задачу, если знаешь, что там будет нудно или скучно.
Кстати, самые скучные задачи для меня копипастные или около того. Где надо сделать что-то, что было уже сделано, по образцу - копировать, вставить, заменив пару строк различий.
Дело на пятнадцать минут, собраться это сделать может занять пару часов 🫣
Что мне помогает:
* Прочитать задание / описание (мозг волей неволей начинает обдумывать и продумывать решение)
* Включить в фоне видео (что-то что можно слушать, больше чем смотреть), либо музыку (очень подходит, например, такое радио)
* Написать первую строку, что-то для выполнения. Создать ли новый класс или найти нужный метод.
Ведь самое сложное в этом случае начать, а уже потом всё не так страшно и уже и не так скучно ☺️
А у вас есть лайфхаки? ✍️
AccuRadio online radio
Lo-fi Beats - Listen to Free Radio Stations - AccuRadio
Chillhop, instrumental. Study, focus, or just lay back and chill.
❤🔥5❤4👍3🔥3
Всем привет!
С воскресенья проходила квест по тому, чтобы добавить видео в курс на Stepik, и вот сегодня спустя 5 дней, видео, длиною в 7 минут, наконец, загрузилось и отображается без ошибок! 🥳
Уже словила демотивацию и думала бросить эту гиблую затею, но после 5 попыток, все получилось. Можно продолжать делать курс дальше👨💻
Но теперь думаю, что возможно видео записей будет меньше, чем я изначально планировала😅 Но посмотрим, может быть и останется по задумке.
Книгу по Data-Intensive Applications опять забросила, опять на том же месте - 5-6 главы с очень подробным разбором как работают партиции, лидеры, подписчики. Не знаю, что-то не идет и все тут. Внимание моментально рассеивается и мысли уходят в разные стороны) Пока отложила.
Думаю прочитать может теперь DevOps Handbook, чтобы поглубже погрузиться в настройку пайплайнов) В тему, сегодня на работе выпросила задачу (как я думала), чтобы встроить одну джобу в пайплайн, но оказалось, что мою идею поняли чуть по-другому и надо теперь сделать то, что возможно вообще никогда никому не пригодится😅
А у вас как дела?🤗
С воскресенья проходила квест по тому, чтобы добавить видео в курс на Stepik, и вот сегодня спустя 5 дней, видео, длиною в 7 минут, наконец, загрузилось и отображается без ошибок! 🥳
Уже словила демотивацию и думала бросить эту гиблую затею, но после 5 попыток, все получилось. Можно продолжать делать курс дальше👨💻
Но теперь думаю, что возможно видео записей будет меньше, чем я изначально планировала😅 Но посмотрим, может быть и останется по задумке.
Книгу по Data-Intensive Applications опять забросила, опять на том же месте - 5-6 главы с очень подробным разбором как работают партиции, лидеры, подписчики. Не знаю, что-то не идет и все тут. Внимание моментально рассеивается и мысли уходят в разные стороны) Пока отложила.
Думаю прочитать может теперь DevOps Handbook, чтобы поглубже погрузиться в настройку пайплайнов) В тему, сегодня на работе выпросила задачу (как я думала), чтобы встроить одну джобу в пайплайн, но оказалось, что мою идею поняли чуть по-другому и надо теперь сделать то, что возможно вообще никогда никому не пригодится😅
А у вас как дела?🤗
❤6🔥4👍3
Всем привет!
Последние пару недель было много интересных событий по работе, но они, к сожалению, попадают под NDA🙊
Из того, что можно рассказать - продолжаю делать курс и заниматься всем и сразу, как обычно мало чего успевая😅
Например, сейчас начались тренировки по алгоритмам от яндекса и была уже первая вводная лекция и домашка до понедельника. Я ее пока не начала, но есть же ещё завтра 😁
Написала небольшой проект, используя GraphQL - интересная вещь, необычно решает проблему n + 1 и облегчает взаимодействие фронта и бэка. Статья на хабре со сравнением GraphQL и REST.
Если хорошо с английским, рекомендую этот доклад на эту тему, очень интересный и с примером проекта на гитхабе.
А ещё, я пишу художественную книжку, начала, наверное, после курса по алгоритмам. Надо, наверное, новый курс какой-то начать, чтобы справиться с потоком энергии 😁
Последние пару недель было много интересных событий по работе, но они, к сожалению, попадают под NDA🙊
Из того, что можно рассказать - продолжаю делать курс и заниматься всем и сразу, как обычно мало чего успевая😅
Например, сейчас начались тренировки по алгоритмам от яндекса и была уже первая вводная лекция и домашка до понедельника. Я ее пока не начала, но есть же ещё завтра 😁
Написала небольшой проект, используя GraphQL - интересная вещь, необычно решает проблему n + 1 и облегчает взаимодействие фронта и бэка. Статья на хабре со сравнением GraphQL и REST.
Если хорошо с английским, рекомендую этот доклад на эту тему, очень интересный и с примером проекта на гитхабе.
А ещё, я пишу художественную книжку, начала, наверное, после курса по алгоритмам. Надо, наверное, новый курс какой-то начать, чтобы справиться с потоком энергии 😁
Хабр
Сравнение REST и GraphQL
Перевод статьи Sashko Stubailo GraphQL vs. REST Два способа отправки данных по протоколу HTTP: в чем разница? GraphQL часто представляют как революционно новый путь осмысления API. Вместо работы...
🔥8❤🔥4❤4👏1
Всем привет!
Вовсю занимаюсь написанием курса, пока готов 1 модуль (практически), самые простые вещи, даже еще пока нет базы данных. Это все начнется во втором модуле.
Кстати, забавный факт. Знаете сколько дублей у меня ушло на запись первого видео, где просто добавлялся проект со Spring Initializr? Правильно, 17 (я же перфекционист 😁) .
Самое смешное, что оно не получилось идеальным, потому что я все же выбрала неверное расширение, но, волевым усилием, решила не перезаписывать)
На днях смонтировала второе видео с выполнением первого задания на выполнение CRUD, там уже не было именно дублей, но были отвлекающие моменты, что нужно было отойти. Например, самый внимательный сможет увидеть, что начала писать я тесты для API днем, а продолжила уже вечером)
Но в целом занятие увлекательное. Мне понравилось, преподавательская жилка во мне торжествует))
Еще интересный опыт получаю на этой неделе - начала участвовать в одном небольшом проекте на питоне. Но пока я только на стадии знакомства с проектом, научилась пока только запускать тесты😁 Но интересно, разница с проектами на java очень сильная.
Кстати, недавно ходила на конференцию IT GORKY и выиграла мерч, теперь у меня очень жизненные лозунги на рабочем столе (фото в комментариях)
Вовсю занимаюсь написанием курса, пока готов 1 модуль (практически), самые простые вещи, даже еще пока нет базы данных. Это все начнется во втором модуле.
Кстати, забавный факт. Знаете сколько дублей у меня ушло на запись первого видео, где просто добавлялся проект со Spring Initializr? Правильно,
Самое смешное, что оно не получилось идеальным, потому что я все же выбрала неверное расширение, но, волевым усилием, решила не перезаписывать)
На днях смонтировала второе видео с выполнением первого задания на выполнение CRUD, там уже не было именно дублей, но были отвлекающие моменты, что нужно было отойти. Например, самый внимательный сможет увидеть, что начала писать я тесты для API днем, а продолжила уже вечером)
Но в целом занятие увлекательное. Мне понравилось, преподавательская жилка во мне торжествует))
Еще интересный опыт получаю на этой неделе - начала участвовать в одном небольшом проекте на питоне. Но пока я только на стадии знакомства с проектом, научилась пока только запускать тесты😁 Но интересно, разница с проектами на java очень сильная.
Кстати, недавно ходила на конференцию IT GORKY и выиграла мерч, теперь у меня очень жизненные лозунги на рабочем столе (фото в комментариях)
🔥6👍3❤🔥2