Pull to refresh
0
0.3
Send message

5 книг, которые стоит почитать начинающему ИТ-архитектору

Reading time5 min
Views19K

Привет, Хабр! Меня зовут Александр Бардаш, я главный архитектор интеграционных платформ в МТС. Сегодня расскажу, почему ИТ-архитекторам важно хотя бы иногда всегда читать книги, и поделюсь подборкой для начинающих. Жду вас под катом и в комментариях!

Читать далее
Total votes 19: ↑14 and ↓5+13
Comments14

Использование очередей (Queue/Deque) для решения алгоритмических задач на Java

Level of difficultyEasy
Reading time3 min
Views898

Как всегда, сначала немного базовой теории для понимания того, с чем мы имеем дело. 

Queue - однонаправленная очередь, представляет собой структуру данных, которая строится по принципу FIFO (first-in-first-out). Другими словами, чем раньше элемент был добавлен в коллекцию, тем раньше он оттуда будет удален. 

Выжимка по методам:

Читать далее
Total votes 7: ↑4 and ↓3+1
Comments6

Разработка Java-проекта с ChatGPT-4: от идеи до реализации

Level of difficultyMedium
Reading time13 min
Views3.4K

Как Java-методист с 15-летним опытом я решил проверить, как нейросеть ChatGPT-4 придумывает use cases, создает доменную модель и пишет программный код. Давайте посмотрим, способна ли эта большая языковая модель в ее текущей итерации заменить разработчика или, по крайней мере, упростить процесс разработки.

Привет, Хабр! Меня зовут Игорь Судакевич, я преподаватель-практик Учебного центра IBS по программированию на языке Java. В начале 2024 года мой коллега из IBS уже делился собственным опытом создания базовой программы с помощью ChatGPT. В том эксперименте использовалась бесплатная модель 3.5, и мы получили множество комментариев из серии «А вы бы тоже самое провернули на последней версии модели — она всё делает в разы лучше!» Мол, и разработчики скоро будут никому не нужны.

Читать далее
Total votes 9: ↑5 and ↓4+5
Comments4

Самый простой способ проверить работу веб-приложения под нагрузкой на примере JMeter и Grafana

Level of difficultyMedium
Reading time8 min
Views3.7K

Привет, меня зовут Рамиль, я программист в отделе разработки серверных решений ЮMoney. В этой статье расскажу о своём эксперименте с нагрузочным тестированием с помощью JMeter, Grafana и Prometheus, а также покажу, как тестировал три сценария: с двумя, 10 и 100 запросами в секунду.

Читать далее
Total votes 2: ↑2 and ↓0+4
Comments6

Как разработать онлайновый компилятор кода при помощи Java и Docker

Reading time12 min
Views2.8K
image


Вы когда-нибудь задумывались, как устроены такие платформы как Codeforces и LeetCode? Как именно они компилируют и выполняют код, поступающий от множества пользователей и проверяют его в тестовых кейсах? Как определяют эффективность алгоритмов?
В этой статье мы подробно разберём, как выстроить высокоэффективную платформу для решения задач.

Исходный код к этой статье выложен на Github в этом репозитории
Читать дальше →
Total votes 3: ↑3 and ↓0+7
Comments0

Магия CSS на практике: советы по вёрстке от гика. Часть 2

Level of difficultyMedium
Reading time8 min
Views8.9K

Хабр, привет! Я снова пришёл к вам со статьёй, где показываю мои любимые техники вёрстки. Моя цель — поделиться опытом с вами. Я использую не только трюки известных экспертов, есть лично мои придумки. Но, пожалуйста, относитесь к этому контенту, как просто альтернативному мнению. Мои техники не являются единственными правильными решениями.


Сегодня я расскажу:

  • какие правила у меня есть при именовании CSS-переменных для дизайн-систем;
  • на какие логические свойства вам стоит обратить внимание;
  • зачем нужно делать прозрачные рамки;
  • как я делаю зависимость значения одного свойства от других более явным;
  • про пользу «внутренних» переменных.

Давайте посмотрим, что я вам подготовил.

Читать дальше →
Total votes 29: ↑29 and ↓0+40
Comments13

Сложно о простом. Канальный уровень (L2) модели OSI

Level of difficultyEasy
Reading time6 min
Views15K


Приветствую, коллеги! Меня зовут ProstoKirReal, и сегодня мы продолжим изучение модели OSI, обсудив канальный уровень (L2). Этот уровень играет ключевую роль в обеспечении надежной передачи данных в локальных сетях.
Читать дальше →
Total votes 29: ↑23 and ↓6+27
Comments10

«Меня увольняют» или манипуляции HR и менеджеров, чтобы вынудить вас уволиться одним днём. На примере Рольфа

Level of difficultyEasy
Reading time7 min
Views35K

Вкратце, для тех, кто ещё не слышал о новом скандале на IT рынке: Крупнейший автомобильный дилер «‎Рольф» увольняет айтишников без компенсаций.

В профсоюз обратились несколько сотрудников из компании и описали происходящее: +- 50 человек решили уволить потому что для них нет работы. Сотрудников по одному вызывали в кабинет где сидели 4 коллеги и рассказывали им о жизни, понятиях и отношениях: «ну мы же как семья». Всё ради того, чтобы получить подпись в соглашении о расторжения трудового договора одним днём. Без каких либо выплат. Спойлер — почти все сотрудники повелись на манипуляции и их уже уволили.

И что там дальше?
Total votes 170: ↑165 and ↓5+195
Comments198

Летнее чтение на английском: список книг по уровням и советы методистов

Level of difficultyEasy
Reading time4 min
Views35K

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

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

Читать далее
Total votes 22: ↑20 and ↓2+20
Comments24

Полное практическое руководство по Docker: с нуля до кластера на AWS

Reading time39 min
Views1.6M



Содержание



Вопросы и ответы


Что такое Докер?


Определение Докера в Википедии звучит так:


программное обеспечение для автоматизации развёртывания и управления приложениями в среде виртуализации на уровне операционной системы; позволяет «упаковать» приложение со всем его окружением и зависимостями в контейнер, а также предоставляет среду по управлению контейнерами.



Ого! Как много информации.

Читать дальше →
Total votes 125: ↑124 and ↓1+123
Comments44

Разработчикам, аналитикам и архитекторам: рецензия на книгу «Проектирование архитектуры API»

Level of difficultyEasy
Reading time9 min
Views8.8K

Сегодня представляем на Хабре очень интересную книгу — переводное издание «Проектирование архитектуры API» («Mastering API Architecture») издательства O'REILLY. Это руководство по разработке и реализации API (программных интерфейсов приложений). Разобраны базовые вопросы обмена информацией в микросервисной архитектуре, обработка запросов на сайтах и в веб‑приложениях (парадигма REST). Бонусами к статье — промокод «SSPSOFT» на русское издание и ссылка на оригинальный текст книги (бесплатная копия книги в PDF).

Читать далее
Total votes 14: ↑12 and ↓2+17
Comments3

Как правильно тестировать конкурентные структуры данных

Level of difficultyMedium
Reading time19 min
Views5.2K

Есть потрясающая библиотека Rust под названием loom, которую можно использовать для тщательного тестирования неблокируемых (lock-free) структур данных. Я давно хотел разобраться, как она работает. И сейчас хочу! Но недавно я случайно реализовал небольшой эксперимент, который, как мне кажется, содержит часть идей loom, поэтому о нём стоит написать. Моя цель — не научить вас тому, что нужно использовать на практике (если вы хотите этого, то почитайте документацию loom), а, скорее, вывести пару идей из фундаментальных принципов.
Читать дальше →
Total votes 33: ↑33 and ↓0+46
Comments3

Как стать Java-разработчиком бесплатно? Программа обучения с нуля

Level of difficultyEasy
Reading time2 min
Views19K

Если вбить «как стать java разработчиком» в поисковую строку, можно найти тысячу курсов по данному направлению. Проблема в том, что все курсы являются платными и, как правило, стоят несколько десятков, если не сотен тысяч рублей. 

Чтобы разбавить засилие платных курсов, мы подготовили для вас программу обучения «Java-разработчик с нуля», которая состоит только из бесплатных материалов.

Читать далее
Total votes 29: ↑24 and ↓5+19
Comments4

Введение в Docker и Kubernetes: основы контейнерных технологий

Level of difficultyEasy
Reading time7 min
Views19K

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

Читать далее
Total votes 15: ↑12 and ↓3+10
Comments16

Volatile, Lock-free, Immutable, Atomic в Java. Как понять и начать использовать

Level of difficultyMedium
Reading time6 min
Views8.6K

Привет, меня зовут Денис Агапитов, я руководитель группы Platform Core компании Bercut.

Сегодня хочу поговорить об одном из lock-free алгоритмов в Java. Разберём как с ним связано ключевое слово volatile и паттерн immutable.

Читать далее
Total votes 12: ↑12 and ↓0+14
Comments13

Как подготовиться к собеседованию начинающему сетевому инженеру? Базовые знания

Level of difficultyEasy
Reading time10 min
Views9.6K


Приветствую, коллеги! Меня зовут ProstoKirReal, и я сетевой инженер.

Мир информационных технологий часто объединяют одним словом — IT. Когда знакомые меня спрашивают, кем я работаю, я всегда переспрашиваю: вам проще объяснить или сложнее? Всегда выбирают проще, и приходится говорить, что я айтишник.

Но мир IT обширен и многогранен. Один из его аспектов — сетевые технологии и, в частности, работа сетевиков. Профессия сетевого инженера трудна и шумна, особенно если проводишь время в холодных серверных, не видя солнечного света. Но если вы всё-таки хотите обучиться сетевому ремеслу, первым, с чем вы столкнётесь, будет собеседование.

Как подготовиться к собеседованию


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

На собеседовании на должность сетевого инженера могут задавать различные вопросы, касающиеся как технических знаний, так и личных качеств и опыта работы. Но если у нас нет опыта или он минимальный, то что мы должны в первую очередь знать?
Читать дальше →
Total votes 19: ↑19 and ↓0+26
Comments7

Собираем docker и деплоим из GitHub Actions

Level of difficultyMedium
Reading time4 min
Views4.4K

Я приведу краткую инструкцию, как быстро собирать проект и деплоить docker. Флоу будет очень простым: одним job мы собираем образ (с указанием тэга или ветки) и кладем в приватный репозиторий образов GitHub, а другим - job деплоим оттуда. Это удобно, когда есть несколько сред и мы один раз собираем и контейнер запускаем из него с разными переменными среды.

Начнем
Total votes 8: ↑7 and ↓1+8
Comments6

Рекомендательная система для интернет-магазина: графы, векторы и генеративный ИИ

Level of difficultyMedium
Reading time8 min
Views1.6K

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

Требуется:

1. построить умную рекомендательную систему, чтобы при заходе на сайт, руки сами тянулись к заветной кнопке «Купить»;

2. облегчить пользователю поиск товаров даже с самыми нестандартными запросами;

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

Ресурсы: команда ИИ из 6 человек, полгода работы, графовая база Neo4j, векторный поиск, генеративный ИИ и безграничное терпение бизнес-команд.

Эта статья о том, как мы это сделали и с какими трудностями столкнулись на своем пути.

Читать далее
Total votes 9: ↑9 and ↓0+9
Comments6

Исправляем следующие 10 000 багов, связанных с наложением ссылок

Reading time18 min
Views2.9K

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

Под катом автор блога Considerations on Codecrafting рассматривает ошибки, связанные с наложением ссылок, предлагает методы их предотвращения и призывает внедрить эти методы на уровне проектирования новых языков.

Читать далее
Total votes 25: ↑25 and ↓0+26
Comments3

Книга: «Java для опытных разработчиков. 2-е издание»

Reading time22 min
Views5.6K
image Привет, Хаброжители!

Язык Java – сердце корпоративного ПО. Если программист хорошо знает Java, он без особого труда найдет интересную работу. Поднимите ваши навыки Java на новый уровень вместе с экспертами. Основательно изучите такие мощные инструменты, как модели конкурентного выполнения и модули, и даже раскройте некоторые глубинные тайны Java.

Узнайте, как Java работает на уровне байт-кода. Освойте ценные приемы конкурентного выполнения и оптимизации быстродействия, а еще ключевые методы сборки, тестирования и развертывания. Также рассмотрите альтернативные языки для JVM – Kotlin и Clojure. Изучив материал, вы будете выделяться на фоне других разработчиков!
Читать дальше →
Total votes 3: ↑3 and ↓0+5
Comments4
1
23 ...

Information

Rating
2,075-th
Registered
Activity