7 чудес разработки
63 subscribers
43 photos
3 videos
12 links
Канал Java разработчика, в котором вы обязательно найдете что-то для себя

Автор: @kignatev
Download Telegram
Я календарь, переверну...
как незаметно подкрался новый учебный год и закончилось лето.🧳

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

1️⃣ Выпишите все текущие задания в одно место.😠
Как бы это очевидно не звучало, но если на вас навалилась куча задач, и кажется, что выполнить за оставшееся время их попросту невозможно, то вам достаточно выписать все на один листок, а затем наглядно увидеть все текущие задачи. Это позволит не забыть важных деталей при планировании работы.

2️⃣ Разбивайте крупные таски на подзадачи.👨‍👩‍👧
Давайте представим картину: вам нужно написать курсовую работу по дисциплине, по которой вы даже не знаете имя вашего преподавателя. В какой-то момент, вы наконец побороли себя и поставили себе цель на следующий день: Написать курсовую работу по теме XYZ. Просыпаетесь рано утром, начинаете разбираться и видите, что дальше оглавления продвинуться не получается.❗️ Потому что нет понимания как двигаться дальше. Как раз для таких случаев важно изначально разбить задачу на более маленькие кусочки, а затем поэтапно выполнять каждый из пунктов.

3️⃣ Установите ожидаемый результат по вышей задаче.🥺
Зачастую хорошо поставленное ТЗ - это половина работы, поэтому для наглядности куда двигаться, важно поставить конкретные и достижимые цели.

А если у вас не получается сдвинуться с мертвой точки, то рекомендую воспользоваться следующим промтом:🤝
Давай представим, что ты обладаешь навыками Agile коуча с десятилетним опытом, и тебе необходимо помочь в структуризации задач. Далее я тебе пришлю список своих текущих задач, а тебе необходимо представить задачи в следующем формате. По каждой задаче выпиши конечный результат, который будет означать, что задача выполнена, и разбей каждую задачу на 5-10 подзадач
Список моих задач: УКАЖИТЕ ВСЕ ВАШИ ЗАДАЧИ ЗДЕСЬ


Делитесь вашими лайфхаками продуктивности в комментариях 👀
Please open Telegram to view this post
VIEW IN TELEGRAM
8👨‍💻2
Java meetup в Сбере 👩‍💻

Вчера я посетил крутой митап в Сбере, на котором рассматривались глубокие темы из мира JVM разработки. На мероприятии было несколько спикеров, которые рассказывали следующие доклады:
1️⃣ Михаил Поливаха. "А мы и не знали. Малоизвестные и мощные фичи Spring Data проектов"
2️⃣ Рустам Курамшин. "Двоичная Java: CRaC и нативная компиляция"
3️⃣ Павел Кислов."Spring Security ACL, о котором мы не знали. Забытое сокровище или ловушка?"
4️⃣ Андрей Кулешов. "Kotlin- и Java-разработка в open source"

🖥 Этот митап прошел для меня достаточно продуктивно, из каждого доклада я вынес нужное не только для решения рабочих задач, но и для совершенствования своих знаний. Например, благодаря докладу Михаила, я смог углубиться в то, как можно оптимизировать UPSERT(Update or Insert) запрос, который часто применяется в работе. А в ходе доклада Рустама, узнал что сервис, написанный на Java может прогреваться 3-10 минут до стабильного состояния, а самое интересное, что это время можно уменьшить путем дополнительной настройки JVM(Java Virtual Machine).

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

❤️Кроме того, я бы хотел поблагодарить организаторов за высокое качество проведения мероприятия, а спикеров за их глубокую проработку докладов, интересное выступление. Было забавным слушать доклад о важном инструменте для работы и смотреть мемы

Ставьте 😺 , если хотите видеть больше мероприятий
Please open Telegram to view this post
VIEW IN TELEGRAM
15👨‍💻1
Всем привет! Буквально вчера я наткнулся на интересный гитхаб, который поможет вам подготовиться к интервью и укрепить базовые навыки. 🦔

В github'e этого энтузиаста вы можете найти:
1️⃣ url-00. Репозиторий с огромным количеством материалов для изучения системного дизайна, начиная с концепций и заканчивая примерами проектирования крупных приложений. 🐦
2️⃣ url-01. Здесь вы можете найти фундаментальные принципы разработки, паттерны, практическую реализацию небольших проектов на Java и Python. 🐑
3️⃣ url-03. Большая подборка материалов для leetcode, которая включает в себя: паттерны, книги, обучающие курсы и наиболее часто встречаемые задачи. 🦌
4️⃣ url-04. Большой сборник вопросов и ответов для поведенческих интервью. В репозитории описаны общие советы по подготовке к интервью, фреймворк STAR и множество вопросов и ответов. Рекомендую уделять должное внимание данному этапу, так как при равных шансах выберут более коммуникативного кандидата. 🐽

Обязательно сохраняй подборку себе и делись с друзьями!
Please open Telegram to view this post
VIEW IN TELEGRAM
👨‍💻4👍22🔥1
Сегодня по всей стране отмечается — День программиста 👨‍💻

Поздравляю всех причастных к этому празднику! 🍉

Интересный факт: единой даты празднования Дня программиста нет⛔️.
Это связано с тем, что обычно его отмечают в 256-й день от начала года. Так как в 2024 году — 366 дней, то праздник выпал на 12 сентября, а не как обычно на 13 сентября). К слову, число 256 выбрано не случайно, это максимально возможное число элементов любой системы с 8-ми битным кодированием.

Будьте продуктивными, друзья! 🚪
Please open Telegram to view this post
VIEW IN TELEGRAM
8🔥5🐳2👨‍💻1
Social AI - площадка для экспериментов или рай СДВГшника?

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

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

📹 Что же я исследовал?
1️⃣ Первоначально я загрузил пост про последнюю конференцию и выбрал весьма положительные категории подписчиков: Supporters, Critics, Fans, Intellectuals, Ideators, Problem-Solvers. С такими категориями я получал только положительные комменатрии, где боты были в восторге от поста(картинка 2).
2️⃣ Затем я загрузил пост про день программиста и добавил другие категории: Pessimists, Skeptics, Haters. С такими категориями количество положительных комментаторов сократилось примерно вдвое. В комментариях к этому посту я увидел несколько мнений: "Разве это праздник? Давайте теперь к каждой профессии придумаем по празднику", "Для чего это обсуждение? Лучше бы вы занимались полезным делом и решали собственные задачи", "256 интересное число, но что если это конспирология для увеличения количества праздников?(если бы этот праздник что-то давал...)", и много много других мнений.
3️⃣ Здесь стоит уделить отдельное внимание дискуссиям, так как механика приложения позволяет видеть ответы на ваши и другие комментарии. Я решил ответить на комментарий одной кибер-девушки, которая говорит, что стоит сфокусироваться на улучшениях рабочих инструментах для разработчиков. И в ответе уже на мои мысли заметил, что количество хейтеров и скептиков стало меньше👀, программа или демонстрировала согласие с позицией, или собственное мнение на тему улучшения процессов.

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

📣Пишите в комментариях, стали бы вы пользоваться таким приложением и для каких целей
А также давайте наберем 20 реакций 🤖, и я вступлю в дискуссию с хейтером и постараюсь его переубедить🤡
Please open Telegram to view this post
VIEW IN TELEGRAM
82
Бу! Испугался?

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

1️⃣ Спустя три года наконец-то возобновил тренировки по хоккею, теперь тренируюсь с одной из команд Сбера⭐️
2️⃣ На работе я стал получать больше задач с бизнес-описанием, а значит — отличная возможность прокачать архитектурные навыки и поработать над декомпозицией задач по своему видению.
3️⃣ В одном из учебных курсов занимаюсь разработкой web-приложения и, погрузившись в frontend-разработку, осознал, что Java и JavaScript - разные языки программирования. Шутка! На самом деле разработка UI намного сложнее чем кажется на первый взгляд. А некоторые аспекты, могут показаться непривычными и даже нелогичными для разработчика с backend-бэкграундом

🎙Пока не писал, накопилось много идей, так что готовьтесь к серии постов — скоро в моем канале ожидаются осадки в виде снега интересного контента📹
Please open Telegram to view this post
VIEW IN TELEGRAM
7🔥3🐳2
Пагинация [Ч.1]

🚀Представим ситуацию: вам необходимо разработать каталог товаров для крупного маркетплейса, где каждый товар содержит базовую информацию.

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

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

Пагинация — это свойство, при котором сервер возвращает не все результаты сразу, а частями, по страницам.


Пагинация решает две важные задачи: 🔩
1️⃣ Улучшение пользовательского опыта. При разбиении данных на части формируется несколько одинаково разделенных страниц, и пользователю легче ориентироваться на какой именно странице был найден понравившийся товар.
2️⃣ Ускорение работы сервера. Ускорение работы сервера достигается за счет передачи пользователю только текущей страницы, что существенно уменьшает объем выборки товаров и ускоряет подбор подходящих вариантов.

А если хотите узнать подробнее, как устроена пагинация изнутри - ставьте 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
82
Пагинация [Ч.2]

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

💻 Для примера: мы продолжим работать с каталогом товаров и будем делать различные SQL-запросы для извлечения данных. Рассмотрим две реализации:

1️⃣Использование LIMIT и OFFSET.
Эта реализация является самой популярной. Для извлечения достаточно указать количество необходимых строк — limit, и количество пропускаемых строк — offset. Пример SQL-запроса:
SELECT * FROM catalog
ORDER BY id ASC
LIMIT 100
OFFSET 1000;

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

2️⃣Использование LIMIT и WHERE.
Для оптимизации пагинации можно воспользоваться дополнительной проверкой по сортируемому значению и делать выборку только больше/меньше страницы, которая была показана пользователю.
SELECT * FROM catalog
WHERE id > 1000
ORDER BY id ASC
LIMIT 5;


⭐️Таким образом, мы делаем выборку среди непоказанных страниц. Давайте представим, что мы получили задачу сортировать товары по цене, цена не является уникальным значением. Вследствие описанный выше запрос будет терять данные. Для решения этой задачи нам необходимо дополнительно учитывать уникальное значение, например, id.
SELECT * FROM catalog
WHERE price > 1 OR (price = 1 AND id > 4046)
ORDER BY price ASC, id ASC
LIMIT 5;


В результате двух постов мы разобрались, как устроена пагинация, и если материал был полезен, то обязательно ставьте 🚀
Please open Telegram to view this post
VIEW IN TELEGRAM
511
Музей "ATOM" ⚛️

🔭 На днях посетил нашумевший музей "АТОМ", который открылся на ВДНХ в прошлом году. Музей поражает своими масштабами, ведь его площадь составляет 25000 квадратных метров, а самая нижняя экспозиция располагается на -3 этаже, глубиной 16 метров.

☣️ Сюжетная линия музея начинается с упоминания радиоактивных элементов и плавно переходит к современной атомной промышленности. Здесь представлено более чем 1,7 тысячи экспонатов, среди которых макеты: советских бомб, автомобилей с атомным двигателем, локомотив с ядерным двигателем, первый ледокол и многое другое.

Музей оставил только положительные эмоции и напомнил мировую историю развития атомной физики. Если вам понравился мини-обзор, обязательно ставьте 🔥
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
721
Я — профессионал 🚀

Приветствую всех chill guys🐑 и chill girls🐽

🌎 Если вы, как и я откладываете все на последние дни, то спешу напомнить, что сегодня заканчивается отборочный этап олимпиады: "Я — профессионал". Задания можно выполнить до 23:59, но более подробное расписание можно узнать по ссылке.

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

Желаю всем успехов и новых побед ⭐️
Please open Telegram to view this post
VIEW IN TELEGRAM
4211
Каток культуры и отдыха 🗺

🏒 В начале этой недели выбрались на каток, находящийся в Парке Горького. Ледовое пространство огибает Фигурный фонтан и украшающие аллеи с множеством огоньков. Площадь катка впечатляет, благодаря этому можно менять свой маршрут, не катаясь по кругу.

🏒 Впечатления каток оставил, конечно же, только положительные, в будние дни по вечерам не так много народу, но небольшой недочет все же есть — в прошлом году территория была несколько больше за счет Пушкинской набережной.

🏟 Каток работает со вторника по воскресенье, с техническими перерывами. Вам будет предложено два временных слота для посещения:
с 10:00 до 15:00 — дневной
с 17:00 до 23:00 — вечерний

P.S
Рюкзаки оставить в камере хранения нельзя 🚫, вам придется выходить с ними на лед. Не совершайте моих ошибок.

🏒 Ставьте реакции и делитесь забавными историями с катков
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
441