Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Потеряшки: ищите потерянные предметы без времени! Расслабляйтесь, исследуйте, находите.

Потеряшки - поиск предметов

Головоломки, Казуальные, Детские

Играть

Топ прошлой недели

  • Rahlkan Rahlkan 1 пост
  • Tannhauser9 Tannhauser9 4 поста
  • alex.carrier alex.carrier 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
yh.853aaa
yh.853aaa
1 год назад

GluonHQ⁠⁠

Недавно, и вполне заслуженно меня назвали по сути динозавром. Потому что я предпочитаю assembler вместо Си.

Но речь сейчас о другом.

Просто представьте, что уже много лет(лет 10 минимум) есть решение, позволяющее писать единый код практически на все платформы(linux, winodows, macos, android, ios и даже web).

Это решение зародилось давным давно, зовут его JavaFX, вроде как официальный выход - 2008 год.

Это очередной шедевр от Sun Microsystems, который до сих пор(без какого-либо развития данной библиотеки) прекрасно себя чуствует и имеет существенные достоинства по сравнению с соврменными решениями.

Для вас flutter весом? А с JavaFX сравнивали?

А еще есть компания GluonHQ, которая стала его поддерживать и развивать.

Просто подумайте - то что я говорю - является единственным решением позволяющим действительно писать один код для всех платформ. При этом организация UI просто на высшем уровне.

Почему эти наработки не в топе? А в топе флаттеры и веб фреймворки?

[моё] Java Javafx Gui Web-программирование Текст
25
0
Viktor.Petrovski
Viktor.Petrovski
1 год назад

Учу Java⁠⁠

Всем привет! Спецы по Java, скажите, почему в ответе после точки столько нулей и единица? С математикой у меня конечно не айс, но не на столько же)

За отсутствие отступов извините 🫣 сегодня уже начал писать по человечески)

Upd: ответ получен, благодарю всех! Спасибо так же за наставления и подсказки. Теперь буду правильно фотографировать экран, писать не в блокноте, жать 200 и цитировать Шекспира (на будущее тем, кто не смог ответить на поставленный вопрос, но очень метко нашел мои непрофессиональные недостатки 😁).

System.out.println("Хорошего всем дня!")

Учу Java Java, Самообразование, Программирование, Языки программирования, Математика, Задача, Winamp
Учу Java Java, Самообразование, Программирование, Языки программирования, Математика, Задача, Winamp
Показать полностью 2
[моё] Java Самообразование Программирование Языки программирования Математика Задача Winamp
116
89
monobogdan
monobogdan
Посты о ремонте и моддинге ретрогаджетов.
TECHNO BROTHER
1 год назад

"Сам себе экосистема ч.3" - быть? Хочу услышать ваше мнение!⁠⁠

"Сам себе экосистема ч.3" - быть? Хочу услышать ваше мнение! Опрос, Гаджеты, Программирование, Смартфон, Покупка, Java, Android, Длиннопост

Друзья! Думаю многие мои давние читатели помнят о цикле статей "сам себе экосистема", где я стараюсь вдохнуть новую жизнь в девайсы 10+ летней давности путем разработки собственных клиентов нужных мне сервисов! Уже вышло две статьи из этой рубрики ( Сам себе экосистема: Как я адаптировал старый смартфон под современные реалии и написал клиенты нужных мне сервисов Не дадим Windows Phone умереть! Как я написал свои клиенты VK, YouTube для Nokia Lumia? Сам себе экосистема ч.2 ). Сейчас, вот, держу несколько своих девайсов на Android 2.2 и потихоньку пилю наработки ещё нескольких нужных мне приложений: клиент Сбера на СМСках (по сути, удобная обертка над 900 с виджетами), актуальная погода на неделю вперед, вьювер карт OpenStreetMap и трекинг посылок. ВКшечка и ютубчик, как мы помним, уже есть. Давайте устроим голосование, не одному ли мне это интересно и быть ли третьей статье из рубрики "сам себе экосистема"?

"Сам себе экосистема ч.3" - быть? Хочу услышать ваше мнение! Опрос, Гаджеты, Программирование, Смартфон, Покупка, Java, Android, Длиннопост
Быть?
Всего голосов:
Показать полностью 1 1
[моё] Опрос Гаджеты Программирование Смартфон Покупка Java Android Длиннопост
22
1
lifeofjuniordev
lifeofjuniordev
1 год назад

ЧТО НУЖНО ЗНАТЬ ПРОГРАММИСТУ, ЧТОБЫ ПРОЙТИ СОБЕСЕДОВАНИЕ⁠⁠

☕ Часть 1: что нужно знать джависту

Язык
Основное:
- Java Core (основные механизмы языка: типы данных, циклы и тд)
- коллекции
- исключения
- дженерики
- аннотации (про них я, кстати, писал статью на хабр)
- функциональные интерфейсы и Stream API
Достаточно общего понимания и умения отвечать на собесах:
- многопоточность
- сборщик мусора
- устройство памяти JVM
- общее устройство JDK
Курс по Java от Oracle

Фреймворк (Spring)
Основное:
- Spring MVC
- Spring Data JDBC
- основы работы Spring: IoC, DI, бины и тд
- разница между Spring и Spring Boot
Для общего развития:
- Spring Security
Курс по основам Spring

Система сборки
- Maven
- Gradle (дополнительно)

👨‍💻 Джуниор

Показать полностью
[моё] Telegram (ссылка) Java IT Программирование Текст
5
1
FalsityVeil
1 год назад
Лига Потерянных Игр

Помогите найти игру с нокии⁠⁠

Игра была про мага, с кнопочного телефона, 2д

Искала по названию Wizard, находила что-то похожее

Помню что в стартовой локации были скелеты которые кидались костями

Ищу игру Мобильные игры Java Текст
4
4
mimokrokodilchik
mimokrokodilchik
1 год назад

Не рекурсией единой. Решаем задачи с деревьями, используя очередь⁠⁠

В предыдущих частях мы познакомились с рекурсивным подходом решения деревьев. В этой части мы воспользуемся стэком.

Не рекурсией единой. Решаем задачи с деревьями, используя очередь IT, Программист, Telegram (ссылка), Java, Длиннопост

Рекурсия далека от идеала.

Рекурсия чаще всего используется только во время собеседований (а этот цикл статей именно направлен на подгтовку к собеседования). В промышленной разработке её чаще избегают изза потенциальных следующих потенциальных проблем:

  • Криво написанная рекурсия может выполняться бесконечно (в "лучшем" случае это приведет к ошибке переполнения стэка). В худшем программа повиснет (особенно если программа однопоточная).

  • Изначально чаще всего под стэк выделяется не более 1мб памяти а это значит что рекурсивная функция сможет вызвать саму себя где то от 10 до 20 тысяч раз. (размер можно легко увеличить с помощью параметра -Xss но стоит помнить что у JDK есть ограничения по верхней границе - обычно до 1 ГБ)

  • Рекурсия сложна для понимания, особенно новичкам.

  • Высокое потребление памяти - каждый раз спуская на уровень ниже мы позволяем сборщику мусора удалить ссылки используемые на верхних уровнях - и это не ошибка тк все объекты используемы выше текущего уровня будут использованы когда мы вернемся "снизу"

Очеред (или Стэк) - популярный подход в решении задач на деревья.

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

  • Добавляем корневой элемент в очередь

  • Проходим по всем элементам очереди и ранее добавленные узлы

  • Если наследники узла не пусты добавляем в очередь опять

Обходим дерево в ширину.

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

Не рекурсией единой. Решаем задачи с деревьями, используя очередь IT, Программист, Telegram (ссылка), Java, Длиннопост

Желаемый порядок распечатки - сверху вниз, слева направо.

Что такое очередь и как ей пользоваться?

Для начала познакомимся с интерфейсом очереди (Queue) в Java. Очередь представляет собой FIFO (first in, first out - первый зашёл, первый вышел) структуру. В нашем случае потребуется два метода:

  • add - добавить в очередь

  • poll - вытащить первого из очереди (элемент который бы добавлен раньше других)

Как именно мы будем выполнять обход дерева?

Обходить дерево мы будем следующим способом:

  • Добавим в очередь корневой элемент

  • "Вытащим" добавленный элемент и положим в очередь его наследников

  • Повторим 1-2 шаги пока в очереди ничего не останется

Изобразим эти действя по шагам:

Не рекурсией единой. Решаем задачи с деревьями, используя очередь IT, Программист, Telegram (ссылка), Java, Длиннопост

Движемся слева направо. Красными стрелками указаны "вытаскиваемые" из очереди элементы.

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

Теперь напишем код описанной выше логике

Не рекурсией единой. Решаем задачи с деревьями, используя очередь IT, Программист, Telegram (ссылка), Java, Длиннопост

И так как запомнить данный подход если он попадется на собеседовании? Я бы рекомендовал держать в памяти две вещи:

  • условие while (!queue.isEmpty())

  • queue.poll() - вытаскивание элемента

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

Показать полностью 3
[моё] IT Программист Telegram (ссылка) Java Длиннопост
0
4
mimokrokodilchik
mimokrokodilchik
1 год назад
Серия Деревья

Продолжаем решать деревья. Инвертирование дерева - одна из самых популярных задач⁠⁠

Эта часть является продолжением цикла лекций про деревья. В этой части мы снова воспользуемся рекурсией чтобы инвертировать дерево. Задача довольно популярна и по сложности является довольно простой.

Допустим у нас есть дерево

Допустим у нас есть дерево ниже:

Продолжаем решать деревья. Инвертирование дерева - одна из самых популярных задач IT, Программист, Telegram, Telegram (ссылка), Java

Инвертируем дерево

Целью является инвертировать дерево. Те для каждого узла нужно поменять местами его левый и правый наследники. Логику надо также применять к наследникам наследников.

Продолжаем решать деревья. Инвертирование дерева - одна из самых популярных задач IT, Программист, Telegram, Telegram (ссылка), Java

Давайте проговорим какие этапы нужно продумать:

  • Проитерироватсья по всем узлам рекурсией те нам понадобится функция которая будет вызывать саму себя.

  • Нижние пустые null узлы нужно будет проигнорировать

  • Для всех остальных узлов нужно выполнить смену ссылок для правого и левого наследников

Решение:

Продолжаем решать деревья. Инвертирование дерева - одна из самых популярных задач IT, Программист, Telegram, Telegram (ссылка), Java

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

Показать полностью 2
[моё] IT Программист Telegram Telegram (ссылка) Java
3
Блог компании Партнёрский материал Реклама
practicum.yandex
practicum.yandex
12 дней назад

Инженер машинного обучения — кто это, чем занимается и как им стать⁠⁠

Машинное обучение — технология, которая позволяет компьютеру самообучаться и распознавать закономерности. А помогают ему инженеры машинного обучения. Рассказываем, чем они занимаются, какие навыки им нужны и как войти в эту профессию.

Инженер машинного обучения — кто это, чем занимается и как им стать Обучение, IT, Длиннопост, Блоги компаний

Кто такой инженер машинного обучения

Инженер машинного обучения (ML-инженер — от англ. Machine Learning Engineer) — это специалист, который разрабатывает и внедряет алгоритмы, позволяющие программам обучаться на данных и принимать решения без явного программирования. Скажем, специалист по Data Science анализирует данные и строит модели, а ML-инженер оптимизирует их и интегрирует в реальные приложения.

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

Чем занимается ML-инженер на практике

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

Следующий этап — выбор и обучение модели. Здесь инженер выбирает один или несколько алгоритмов, проводит эксперименты, настраивает параметры, оценивает качество. Он должен понимать, как работают линейные регрессии, деревья решений, градиентный бустинг, нейронные сети и уметь выбрать нужный инструмент под задачу.

Самое сложное и ответственное начинается после того, как модель готова. ML-инженер превращает ее в часть работающего приложения. Это означает упаковку модели в API, написание серверного кода, оптимизацию по скорости и памяти, мониторинг качества в реальном времени и повторное обучение по мере необходимости. Он также работает над масштабируемостью и надежностью, так как в реальных условиях модели должны обрабатывать тысячи или миллионы запросов ежедневно.

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

Инженер машинного обучения — кто это, чем занимается и как им стать Обучение, IT, Длиннопост, Блоги компаний

Какие навыки и знания нужны

Чтобы стать инженером машинного обучения, нужно сочетание теоретической базы и практических навыков:

  • Уверенное владение языками программирования, прежде всего Python. Большинство библиотек машинного обучения, таких как scikit-learn, TensorFlow, PyTorch, написаны именно на нем.

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

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

Также важно уметь работать с базами данных (SQL, NoSQL), системами хранения и обработки больших данных (Hadoop, Spark), знать основы DevOps и MLOps (Docker, CI/CD, Kubernetes, автоматизация моделей).

Плюсы и минусы профессии

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

➕ Перспективность. ML активно применяется в медицине, финансах, ритейле, науке и других отраслях. Это дает широкие возможности для карьерного роста.

➕ Интеллектуальная работа. Работа подходит тем, кто любит решать сложные задачи и работать с данными.

➕ Богатая образовательная экосистема. По теме ML иного курсов, open-source инструментов, конференций и сообществ. Есть возможность постоянно учиться и обмениваться опытом.

➖ Высокий порог входа. Нужны глубокие знания математики, программирования, а также баз данных, алгоритмов и архитектур моделей.

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

➖ Трудности с внедрением моделей. Не всегда удается успешно интегрировать модель в продукт. Требуются усилия по адаптации под инфраструктуру, масштабированию, мониторингу и учету бизнес-ограничений.

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

Зарплаты ML-инженеров

По данным Dream Job, средняя зарплата ML-инженеров в России за 2025 год составляет 165 000 рублей. Чаще всего зарплаты находятся в диапазоне от 100 000 до 230 000 рублей. Минимальная зафиксированная зарплата — 87 000 рублей, максимальная — 360 000.

Вилки джуниоров в машинном обучении, по данным HH Карьера, составляют от 70 000 до 110 000 рублей. Мидлов — от 220 000 до 250 000 рублей, а сеньоров — от 348 000 до 350 000 рублей.

Вот так выглядят зарплаты в профессии ML-инженер летом 2025 года.

1/2

Перспективы профессии

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

Спрос на таких специалистов продолжает расти, а уровень доходов остается одним из самых высоких на рынке. По данным исследования, наибольший спрос в сфере анализа данных и ML пришелся на последние четыре года — число предложений выросло в 2,5 раза.

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

Как стать ML-инженером

Многие специалисты приходят в машинное обучение из смежных областей:  математики, физики, программирования, аналитики. Часто у них есть техническое образование, хотя это необязательно. Важнее — желание учиться и практиковаться.

Один из самых надежных способов — пройти профильное обучение. Это может быть вуз, где есть направления по ИИ и анализу данных, или курсы, ориентированные на практику. Онлайн-платформы предлагают мощные программы, которые можно проходить параллельно с работой или учебой.

Например, стартовать в профессии поможет онлайн-курс «Инженер машинного обучения» Практикума — за 4 месяца вы изучите полный жизненный цикл модели машинного обучения и сможете строить продвинутые ML‑модели. Вы освоите Docker, FastAPI, Airflow, MLflow, Yandex Cloud и другие инструменты, добавите 7 ML-проектов в портфолио и получите диплом о профессиональной переподготовке.

Начните учиться бесплатно!

Реклама ООО «Яндекс», ИНН: 7736207543

Показать полностью 3
Обучение IT Длиннопост Блоги компаний
5
19
mimokrokodilchik
mimokrokodilchik
1 год назад
Лига программистов
Серия Деревья

Используем рекурсию для решения задач на деревья. Ищем максимальную глубину дерева⁠⁠

В прошлой части мы рассмотрели разные подходы рекурсивного обхода дерева. Давайте воспользуемся некоторыми из них для решения довольно известных задач.

Находим максимальную глубину дерева.

Одна из самых популярных и простых задач на деревья - поиск узла находящегося на максимально удаленом расстоянии. Рассмотрим дерево ниже:

Используем рекурсию для решения задач на деревья. Ищем максимальную глубину дерева IT, Программист, Telegram (ссылка), Telegram, Java, Длиннопост

Высота данного дерева - пять

Довольно очевидно что самый длинный узел в данном дереве - M и он является пятым по счету если головной является первым.

Как решать данную задачу используя рекурсию.

Если сильно упрощать то нам нужно сделать 2 действия:

  • Обойти все узлы

  • Каким то образом "сохранять" состояния каждый раз когда мы обходим узлы

Но как же сохранять состояния о той глубине на которой мы побывали? Тут есть как минимум два варианта:

  • Использовать возвращемое значение самой рекурсивной функции и "возвращать" её на уровень выше.

  • Иметь какой то объект в котором мы будем сохранять состояния находясь внутри рекурсии

Воспользуемся первым подходом. Сосредоточимся на следующих аспектах:

  • Рекурсивная функция должна передавать значение сама себе "наверх"

  • Определить какое именно значение должно перебрасываться.

Логика передаваемого "наверх" значения.

  • Самые нижние уровни (те что указывают на null) должны возвращать 0 тк они не включены в расчет глубины данного подграфа

  • Нижний уровень который с листьями имеет лишь null предков должен вернуть 1 тк он является первым уровнем

  • Узел выше чем 1й (те не лист) должен выбирать максимальный уровень из двух его наследников и добавлять 1 тк находится на уровень выше из наибольшего из них.

После данных рассуждений у нас вырисовывается вот такая картина:

Используем рекурсию для решения задач на деревья. Ищем максимальную глубину дерева IT, Программист, Telegram (ссылка), Telegram, Java, Длиннопост

null уровни 0, листья 1 и все остальные узлы - выбирает наибольшее из наследников и добавляют 1.

К чему привели наши рассуждения?

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

И так первая версия кода:

Используем рекурсию для решения задач на деревья. Ищем максимальную глубину дерева IT, Программист, Telegram (ссылка), Telegram, Java, Длиннопост

Версия рабочая но слишком многословная - хотя для собеседования вполне подойдет.

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

Этот код можно было бы улучшить удалив случай когда мы находимся в самом низу - дело в том что если условие истино то возвращаемое значение maxDepth + 1 будет также равно 1.

Спасибо за внимание, всем кому интересна промышленная разработка приглашаю в мой канал.

Показать полностью 2
[моё] IT Программист Telegram (ссылка) Telegram Java Длиннопост
1
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии