🏃 🏃 🏃 Самоучитель по Go для начинающих. Часть 12. Обобщенное программирование. Дженерики
В этой части самоучителя подробно изучим парадигму обобщенного программирования и её реализацию в языке Go, на практическом примере рассмотрим дженерики и их основные составляющие. В конце статьи решим несколько интересных задач для закрепления материала.
👉 Читать гайд
📌 Остальные части в серии:
1. Особенности и сфера применения Go, установка, настройка
2. Ресурсы для изучения Go с нуля
3. Организация кода. Пакеты, импорты, модули. Ввод-вывод текста.
4. Переменные. Типы данных и их преобразования. Основные операторы
5. Условные конструкции if-else и switch-case. Цикл for. Вложенные и бесконечные циклы
6. Функции и аргументы. Области видимости. Рекурсия. Defer
7. Массивы и слайсы. Append и сopy. Пакет slices
8. Строки, руны, байты. Пакет strings. Хеш-таблица (map)
9. Структуры и методы. Интерфейсы. Указатели. Основы ООП
10. Введение в ООП. Наследование, абстракция, полиморфизм, инкапсуляция
11. Обработка ошибок. Паника. Восстановление. Логирование
IPv4 🆚 IPv6: ключевые отличия
Переход от IPv4 к IPv6 в первую очередь обусловлен необходимостью большего количества интернет-адресов, а также желанием оптимизировать определенные аспекты управления сетью. Выше — обзор основных отличий интернет-протоколов.
👉 Источник
#инфографика
⚡️ Открылась регистрация на митап Сбера по IT-архитектуре «Arch.Meetup by Sber»!
14 мая топовые спикеры из Леруа Мерлен, МТС и Сбера, а также ИТ-архитекторы и другие инженеры со всей страны соберутся вместе в штаб-квартире Сбера на Кутузовском проспекте 32 (и онлайн), чтобы поговорить о Composable-архитектуре.
Что вас ждет на митапе?
▪️Доклады по теме композитной архитектуры и реальные кейсы от лидеров индустрии: узнаем про AI-агенты, трансформацию бизнеса в условиях турбулентности, концепцию Packaged Business Capability и многое другое
▪️Выставка новых технологий и продуктов Сбера, нетворкинг с большим сообществом и фуршет
▪️И, конечно же, много подарков и сюрпризов для гостей
Регистрируйся и узнай больше о программе митапа по этой ссылке. Количество мест ограничено!
До встречи на митапе 😉
🎭 7 типов программистов, которых вы встретите на собеседовании
Осторожно! Данная статья носит шуточный характер и не преследует цели обидеть кого-либо. Все ситуации выдуманы, а совпадения — случайны.
🔗 Читать статью
🔗 Зеркало
Требование заплатить за обучение при увольнении — это ок?
Многие компании готовы оплатить своим сотрудникам обучение только при одном условии: при увольнении, не отработав двух лет, сотрудник должен вернуть стоимость обучения.
👀Так вот, оказывается, тут все не так однозначно. Айтишник подписал (см. скрины) ученический договор с крупной компанией по разработке ПО. В нем не было четкого предмета обучения, а работодатель сам проводил курс без лицензии — так что и никакого сертификата выдано не было. На деле парень просто проходил процесс адаптации на новом месте, но в документе это назвали повышением квалификации.
Когда спустя год айтишник решил уволиться, его пытались заставить вернуть деньги за обучение еще до ухода из компании (а это вообще незаконное требование). В итоге компания отказалась от требований только когда подключились юристы.
Ликбез от наших коллег — что важно знать про компенсацию обучения.
❓ В каком случае работодатель может потребовать возместить расходы?
❗️ Только в случае получения новой профессии, квалификации или специальности в организации с образовательной лицензией. Наставничество внутри компании не считается.
❓ Какие условия должны быть соблюдены, чтобы за обучение можно было требовать возмещение?
❗️ Нужно подписать допсоглашение к трудовому договору или ученический договор, в котором указаны:
⁃ квалификация, которую получит ученик
⁃ период обучения и период последующей отработки
⁃ условия компенсации обучения сотрудником, если он уволился раньше срока
⁃ стоимость обучения. ТК РФ не обязывает указывать этот пункт, но лучше его включить, чтобы проверить, не завышена ли цена
⁃ условия, которые обеспечивает для ученика компания
Если у вас что-то из этого списка отсутствует — можете выдыхать: компания не имеет права требовать с вас неустойку.
Спасибо за помощь в юридических тонкостях нашим коллегам — если у вас есть другие вопросы/кейсы из области трудовых отношений, пишите в комменты, постараемся разобраться.
🐍 У нас есть еженедельная email-рассылка, посвященная последним открытиям и тенденциям в мире Python.
В ней:
● Новые возможности в последних версиях Python
● Работа с базами данных и SQL в Python
● Веб-разработка на Django и Flask
● Машинное обучение и анализ данных с помощью Python
● Автоматизация и работа с API на Python
● Тестирование и отладка кода на Python
● Задачи для новичков с решениями
👉Подписаться👈
👁️💼 Открытые и скрытые вакансии в IT: как найти работу мечты
Существует целый пласт скрытых вакансий, о которых знает ограниченный круг лиц. Как найти эти вакансии и не упустить свой шанс? Читайте в нашей статье.
🔗 Читать статью
🔗 Зеркало
🅾️ Что такое «О» большое: объясняем на простых примерах
«О» большое (Big O notation) — это математическая нотация, которая позволяет оценить, как изменяется время выполнения алгоритма или объём используемой памяти в зависимости от размера входных данных.
Мы написали подробный гайд по видам сложности, проиллюстрировав их понятными примерами.
🔗 Читать статью
🔗 Зеркало
😉 55 промтов для ChatGPT, которые помогут подготовиться к собеседованию
Вы когда-нибудь задумывались, как можно использовать искусственный интеллект для того, чтобы подготовиться к техническим собеседованиям лучше, быстрее и эффективнее? Мы вот — да! И поэтому подготовили 55 промтов, которые помогут сделать это.
В статье собраны шаблоны запросов, которые желательно «докрутить» под себя.
🔗 Читать статью
🔗 Зеркало
🐍💪 ТОП-5 вопросов повышенной сложности на собеседовании по Python
Метаклассы, дескрипторы, модификаторы доступа — звучит сложно? В новой статье разбираем 5 вопросов, которые часто задают на собеседованиях по Python.
🔗 Читать статью
🔗 Зеркало
👀 Свежий взгляд на методологию The Twelve-Factor App для разработки SaaS-приложений
Методология предоставляет набор лучших практик для разработки современных веб-приложений на любой платформе. Практики описывают приложения, которые готовы:
✔️ к горизонтальному масштабированию;
✔️ к непрерывному развертыванию;
✔️ к современным облачным хостингам.
👉 Читать
#проектирование_систем #инфографика
👩💻 Представлен Git 2.45
👉 Ключевые фичи новой версии:
☑️ Добавлена предварительная поддержка бэкенда reftable
для эффективного хранения в репозитории ссылок на ветки и теги.
☑️ Предоставлены средства для обеспечения переносимости между идентификаторами объектов на базе хэшей SHA-1 и SHA-256.
☑️ В команду git rev-list
добавлена возможность отображения идентификаторов объектов, отсутствующих в локальном репозитории, даже если они недостижимы в ветке или теге, что можно использовать для диагностики повреждения репозитория.
☑️ Добавлена новая команда git reflog list
для показа известных reflog-ов и соответствующих им ссылок на теги и ветки.
☑️ Предоставлена возможность определения альтернативных префиксов для вывода git diff
.
☑️ Добавлен параметр core.commentString
для определения строки-разделителя, которая будет использоваться вместо символа #
для игнорирования комментариев в сообщении для коммита.
☑️ В команду git config
добавлена опция --comment
.
☑️ В команду git cherry-pick
добавлена опция --empty
для автоматического удаления избыточных коммитов, по аналогии с опцией --empty
в git-rebase
и git-am
.
☑️ В команде git checkout -p
разрешено использовать символ @
в качестве синонима имени HEAD.
🔗 GitHub blog & OpenNET
#новости
🐰 Как решить проблему высокой связанности сервисов с помощью событийно-ориентированной архитектуры и RabbitMQ
В этой статье я расскажу, как оптимизировать сложную систему микросервисов через брокер сообщений, в данном случае RabbitMQ. Мы рассмотрим вариант решения проблемы высокой связанности между сервисами через переход на событийно-ориентированную архитектуру (EDA).
Читать статью
🤖🖼️ Как работают визуальные трансформеры: магия превращения пикселей в знания
Визуальные трансформеры (Vision Transformers, ViTs) — класс моделей глубокого обучения, которые достигли выдающихся результатов в задачах классификации изображений. В основе ViTs лежит архитектура трансформеров, изначально разработанная для обработки естественного языка.
В новой статье подробно рассказываем (с картинками), как работают такие модели компьютерного зрения.
🔗 Читать статью
🔗 Зеркало
🤖 Напоминаем, что у нас есть еженедельная email-рассылка, посвященная последним новостям и тенденциям в мире искусственного интеллекта.
В ней:
● Новости о прорывных исследованиях в области машинного обучения и нейросетей
● Материалы о применении ИИ в разных сферах
● Статьи об этических аспектах развития технологий
● Подборки лучших онлайн-курсов и лекций по машинному обучению
● Обзоры инструментов и библиотек для разработки нейронных сетей
● Ссылки на репозитории с открытым исходным кодом ИИ-проектов
● Фильмы, сериалы и книги
👉Подписаться👈
💬 Кстати, каким клиентом Git пользуетесь?
👍 — консольным
❤️ — встроенным в редактор/IDE
🔥 — сторонним графическим
🤔 — свой вариант (напишу в комментариях)
#холивар #айтисловарь
🥑 Подборка лучших статей «Библиотеки программиста» за апрель: сохраняй в заметки, чтобы не пропустить #самыйсок
🐛 7 признаков неопытного программиста
🐍📖 ТОП-10 книг по Python для начинающих программистов в 2024 году
✍️ Как написать отличную документацию
🐍🛠️ 32 инструмента для Python, которые помогут писать профессиональный код
🤖👾 Как злоумышленники взламывают LLM: 7 ключевых стратегий
🤖✍️ Как работают LLM: простое объяснение через аналогию с кулинарией
⚙️ Названия веток и комментарии к коммитам в Git: лучшие практики
🙅♂️ Дискриминация на работе: в чем проявляется и что делать, если вы с ней столкнулись
🧑💻 Как я входил в IT: опыт подписчиков «Библиотеки программиста»
🛠️ Что такое прогрессивные веб-приложения
🌐 Использование глобальной контрольной группы на практике: тонкости, нюансы, подводные камни
🤖🛠️ 4 полезных инструмента для работы с ИИ: RAGFlow, The Pipe, UFO и SWE-agent
▶️ Как оживить фронтенд: 8 лучших JS-библиотек для анимации
🤺 Искусство оскорблять: как поставить коллегу на место и отбить желание работать над проектом
🎸 10 причин, по которым стоит выбрать Django вместо FastAPI
🐍❌ 10 основных ошибок начинающих Python-разработчиков
🏃 🏃 Самоучитель по Go для начинающих. Часть 11. Обработка ошибок. Паника. Восстановление. Логирование
🤖💣 ИИ-ассистенты разработчика: скрытая угроза
🔍💼 Исследование рынка: 8 наиболее востребованных языков программирования в 2024 году
🤖🔢 Математические основы генеративных нейронных сетей: что нужно знать для их изучения
🗿🔨 Как мы разбили монолит на маленькие кусочки и что из этого вышло
📖 ТОП-7 книг по C# для начинающих разработчиков в 2024 году
⚛️💥 React 19 уничтожит все фреймворки
🗺️💼 Из Москвы в Дублин: опыт российского разработчика из Amazon
🐍🤔 «Задумчивый» код: временная сложность операций со структурами данных в Python
🤖🖼️ Как работают визуальные трансформеры: магия превращения пикселей в знания
🐰 Как решить проблему высокой связанности сервисов с помощью событийно-ориентированной архитектуры и RabbitMQ
🤔 Бывает, что в небольших командах devtool-стартапов создавать профессиональный UI-дизайн некому. Но выход есть: Глеб Строганов из Evil Martians предлагает гайд по разработке интерфейса даже без дизайнера + 5 паттернов, которые помогут создать UI максимально быстро.
👉 Читать
☕🔍 Тестирование в Java: лучшие практики, инструменты и
рекомендации для разработчиков
Качественное тестирование — залог успешного Java-проекта. В этой статье мы поделимся лучшими практиками, инструментами и методами, которые помогут вам создавать надежный и эффективный код.
Читать статью
📈 Состояние рынка труда и зарплат в IT в I полугодии 2024 года: результаты опроса, проведенного профсоюзом работников ИТ
🌍 География опроса: 1626 респондентов из 41 страны мира (страна, которую респондент указал в ответ на вопрос «Ваша локация»).
📌 Основные выводы:
☑️ В российских компаниях зарплаты руководителей выше на 75% по сравнению со специалистами. В иностранных компаниях разница всего 12%.
☑️ Самые высокие зарплаты в компаниях из банковской сферы, ритейла и IT.
☑️ Женщины в IT получают на 25% — 37% меньше мужчин.
☑️ В России медианные зарплаты выше 200 тыс. рублей у аналитиков, разработчиков, специалистов ИБ и менеджеров.
☑️ 92% айтишников работают по трудовому договору. Их зарплаты на 22% выше, чем у тех, кто работает по договорам оказания услуг.
☑️ Интернам и джунам чаще всего приходится соглашаться на менее выгодные условия. 14% — 16% из них работают не по трудовому договору. И только 39% — 42% из них доступна удалённая работа.
☑️ 60% работников получают зарплату только из оклада.
🧑💻 Статьи для IT: как объяснять и распространять значимые идеи
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
🥷 Хотите научиться проектированию систем на примерах и подготовиться к собесу? Ловите репозиторий со всем необходимым, чтобы стать профи в этой теме.
👉 GitHub
🤔 Как оценить, сколько вы стоите и как вести переговоры о деньгах с работодателем?
Методичка от Hello New Job, из которой вы узнаете:
1️⃣ Про оценку своей стоимости
2️⃣ Про определение компромиссов, на которые вы готовы
3️⃣ Про 2 главные цифры:
🔹 Среднюю рыночную стоимость такого специалиста, как вы
🔹 Желаемый доход, включая бонусы за выполненные KPI и т. д.
⚖️ Балансировка нагрузки — метод распределения сетевого трафика и задач между сетевыми устройствами. Вот некоторые из юзкейсов:
🔸 Обработка сбоев
🔸 Проверка состояния инстансов
🔸 Маршрутизация запросов, специфичных для платформы
🔸 SSL termination
🔸 Балансировка нагрузки между зонами
🔸 Поддержка сессий пользователей
👉 Источник
#инфографика
🐍💪 ТОП-5 вопросов повышенной сложности на собеседовании по Python
Метаклассы, дескрипторы, модификаторы доступа — звучит сложно? В новой статье разбираем 5 вопросов, которые часто задают на собеседованиях по Python.
🔗 Читать статью
🔗 Зеркало
🤔 Google уволила команду Python-разработчиков
В преддверии ежегодной конференции Google I/O компания уволила сотрудников ключевых команд, не только Python, но и также Flutter, Dart и др. Сама Google говорит, что сделала это ради упрощения и повышения эффективности.
🐍 Сотрудники же рассказали чуть больше подробностей о происходящем. Так, по словам одного из них, были уволены люди, которые управляли всеми внутренними процессами, связанными с Python. Как отметили другие комментаторы, годами большую часть работы в Python-команде выполняли менее 10 человек.
Python был одним из первых языков, которые Google стала активно использовать. Это был последний главный язык бэкенда, для которого собрали команду.
💬 Удается ли вам отдыхать вне работы?
👍 — да, почти всегда
🙏 — да, иногда
🤔 — нет, всегда работа в голове
🥱 — какой отдых? Я же айтишник
#холивар
🔥 6 инструментов, которые превратят ваш код в красивые диаграммы:
🔧 Diagrams
🔧 Go Diagrams
🔧 Mermaid
🔧 PlantUML
🔧 ASCII diagrams
🔧 Markmap
👉 Источник
#инфографика
Rust — это не «memory safe C»
Любопытный взгляд на Rust, который пересекается с выступлением на конференции Rust Nation UK 2024 под названием Beyond Safety and Speed: How Rust Fuels Team Productivity от Lars Bergstrom, Google Android Director of Engineering.
📌 Автор рассказывает:
☑️ Почему взгляд на Rust как на «memory safe C» очень сильно сужает область его возможного применения
☑️ Почему Rust — удобный в разработке язык высокого уровня, которому просто случайно повезло оказаться невероятно быстрым
☑️ Почему разработка на Rust быстрее, чем многие думают
☑️ Почему Rust — это один из лучших языков общего назначения
👉 Читать
🐍🤔 «Задумчивый» код: временная сложность операций со структурами данных в Python
Вы когда-нибудь задумывались, почему некоторые операции в Python выполняются мгновенно, а другие заставляют ваш код «задумчиво» работать? В новой статье разбираемся во временной сложности и узнаём, как писать быстрый и эффективный код.
🔗 Читать статью
🔗 Зеркало