🛠 Как проектировать REST API: полезные советы для разработчика
1. Используйте существительные во множественном числе для обозначения коллекций.
# Хорошо
GET /products
GET /products/{product_id}
# Плохо
GET /product/{product_id}
# Хорошо
GET /v3/application/listings/{listing_id}
# Плохо
PATCH /v3/application/shops/{shop_id}/listings/{listing_id}
.json
или другие расширения к URL-адресу.# Хорошо
GET /things returns:
{ "data": [{ ...thing1...}, { ...thing2...}] }
# Плохо
GET /things returns:
[{ ...thing1...}, { ...thing2...}]
# Хорошо
GET /things returns:
{
"data": [
{ "id": "KEY3", "foo": "bat" }
]
}
# Плохо
GET /things returns:
{
"KEY3": { "id": "KEY3", "foo": "bat" }
}
# Хорошо
{ "id": "123" }
# Плохо
{ "id": 123 }
🐍 У нас есть еженедельная email-рассылка, посвященная последним открытиям и тенденциям в мире Python.
В ней:
● Новые возможности в последних версиях Python
● Работа с базами данных и SQL в Python
● Веб-разработка на Django и Flask
● Машинное обучение и анализ данных с помощью Python
● Автоматизация и работа с API на Python
● Тестирование и отладка кода на Python
● Задачи для новичков с решениями
👉Подписаться👈
🔢 Как научиться решать сложные задачи
Нам может не даваться решение сложных математических задач по многим причинам: от стереотипов до негативного школьного опыта. К счастью, это можно исправить. В карточках перечислили лучшие на наш взгляд книги, которые помогут понять, полюбить и подтянуть математику.
Ещё больше книг, а также курсы, игры, методики и приложения — в нашей статье 👈
😈 Самые черные скидки в академии. -50% на курсы
🔥 В честь черной пятницы до 30 ноября мы запустили масштабную распродажу на все наши курсы – https://proglib.io/w/80fc1817
На всех курсах вас ждет:
⚫️ Лучший преподавательский состав.
Например, математику вам будут преподавать доценты ВМК МГУ. А алгоритмы разработчик из Яндекса и преподаватель МФТИ и НИУ ВШЭ.
⚫️ Бессрочный доступ ко всем курсам.
А это значит, что вы сможете проходить обучение в своем темпе, без жестких дедлайнов.
⚫️ Поддержка преподавателей в чате и на платформе Coreapp.
Вам всегда помогут разобраться в сложной теме и ответят на любые вопросы.
👉 А если вы сомневаетесь подходит ли вам курс, то вы можете начать изучение с бесплатных вводных занятий, чтобы познакомиться с преподавателями и форматом обучения.
Переходите на сайт и оставляйте заявку на вводные занятия – https://proglib.io/w/80fc1817
До встречи на обучении 🙌
💻 Комфортный сетап и качественное рабочее пространство — это то, что прямо пропорционально влияет на вашу продуктивность. Кто-то тратит на всё это очень большие деньги, а кому-то вообще по барабану, в какой монитор смотреть, на чём сидеть и на что нажимать.
В любом случае эта тема важная и интересная. Смотрите подкаст «Мы обречены» о том, как собрать идеальное рабочее место для программиста:
📺 02:58 — Представление гостей
📺 05:31 — Значение и смысл личного и рабочего комфорта
📺 16:23 — Поднимающийся стол
📺 23:16 — Стул
📺 30:23 — Монитор
📺 45:23 — Клавиатура
📺 1:08:51 — Мышка
📺 1:15:28 — Странные бесполезные устройства
📺 1:21:33 — Умный дом
📺 1:47:52 — Важность комфорта для продуктивности
📺 1:58:07 — С чего начать в осваивании комфорта
📺 2:02:32 — Обнадеживающее аутро
#подкасты
🦀 Отличная новость для начинающих и начавших Rust-разрабов!
На roadmap.sh вышла дорожная карта, которая поможет выбрать правильный вектор в обучении.
#roadmap #rust
💡 Каждый шаг вперёд в области вычислительной техники сопровождался достижениями в области отображения и редактирования кода. Появление графических пользовательских интерфейсов привело к появлению интегрированных сред разработки.
🧑💻 Даже сегодня у нас ограниченные возможности, когда мы хотим добавить дополнительный смысл к коду. Подсветка синтаксиса была изобретена в 1982 году, чтобы помочь детям программировать на BASIC. Но помимо цветов, большинство редакторов должны общаться с разработчиками через свои интерфейсы — всплывающие подсказки, подчёркивания и так далее.
🤔 К чему всё это? Недавно команда Vercel представила новый шрифт Geist, а ребята из GitHub пошли еще дальше — анонсировали появилась команда GitHub Next с целым семейством шрифтов Monaspace. Новые шрифты предлагают более выразительную палитру для кода и инструментов, с которыми вы работаете.
💬 Как вам?
🔥 — огонь
🥰 — пойду скачивать
🤔 — да как-то пофиг на шрифты
🗄️ Векторные базы данных: наглядная иллюстрация от ByteByteGo
Векторные БД появились не так давно, чтобы помочь в работе поисковых систем, основанных не на ключевых словах, а на нейронных сетях. Они имеют несколько ключевых применений в ИИ:
🔎 Семантический поиск — получение информации на основе смысла, а не только ключевых слов.
💡 Рекомендации — предложение контента, который наиболее релевантен интересам пользователя.
⚒️ Большие языковые модели — понимание слов в контексте для генерации и суммирования.
📈 Обнаружение аномалий — идентификация аномальных точек данных по сравнению с нормой.
🖼️ Классификация изображений — категоризация изображений на основе визуальных свойств.
Векторные БД позволяют моделям машинного обучения устанавливать связи между частями данных. Это поддерживает продвинутые возможности ИИ, которые невозможны при использовании только сырых данных. Векторное пространство действует как своего рода «память» для алгоритмов.
#инфографика
👀 6 способов привлечь внимание работодателя
Как рассказать, что вы умеете программировать и хотите получать за это деньги, не говоря об этом напрямую:
1️⃣ Оформить профиль на Линкедин, Гитхаб и Стековерфлоу
2️⃣ Участвовать в хакатонах
3️⃣ Начать вести свой блог об IT
4️⃣ Стать участником конференций от IT-гигантов
5️⃣ Создать канал на YouTube и рассказывайте об IT
6️⃣ Написать в личку
👉 Подробнее о каждом пункте читайте в статье
🥵 7 типов «сложных» разработчиков
Как найти подход к таким «сложным» типам и сделать работу в команде более эффективной и приятной? Рассказываем в статье, как с ними работать, чтобы избежать конфликтов и достичь общих целей.
Читать статью
#почитать
🧑💻 Статьи для IT: как объяснять и распространять значимые идеи
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
🔐🔧sshx — безопасный веб-терминал для совместной работы. Инструмент позволяет поделиться своим терминалом с кем угодно на бесконечном многопользовательском холсте.
🔽Под капотом:
💭Поддержка совместной работы в режиме реального времени с удаленными курсорами и чатом
🏎️Скорость работы + сквозное шифрование
🦀Легковесный сервер на Rust
Установите sshx одной командой в Linux/macOS и используйте его для обучения, отладки или доступа к облаку.
curl -sSf https://sshx.io/get | sh
🎙 Евгений Кателла — один из ведущих подкаста Подлодка, который когда-то был посвящен только Андроиду, и Женя там был экспертом по теме.
С тех пор многое изменилось, Подлодка стал подкастом обо всем в индустрии, и Женя тоже прошел через смену направления. Сейчас он живет в Лондоне, и перебрав кучу офферов и новых мест, остановился на дата инжиниринге.
В новом выпуске «Как мы попали в ИТ» он перескажет всю свою карьеру — от айтишной специальности в универе до шарпов, мобильной разработки в корпорациях и поиска работы по всему миру.
📺 Смотреть
#войтивайти
🔃Data pipelines на практике: наглядная иллюстрация от ByteByteGo (Alex Xu)
Пайплайны данных являются ключевым элементом для эффективного управления и обработки данных в современных системах. Они обычно включают пять этапов:
️1️⃣ Collect: данные собираются из хранилищ данных, потоков данных и приложений, источниками которых могут быть удалённые устройства, приложения или бизнес-системы.
️2️⃣ Ingest: данные загружаются в системы и организуются в очередях событий.
3️⃣ Store: данные хранятся в различных системах хранения.
4️⃣ Compute: данные агрегируются, очищаются и преобразуются в соответствии с корпоративными стандартами, включая преобразование форматов, сжатие и разбиение.
5️⃣ Consume: обработанные данные становятся доступными для использования через инструменты аналитики и визуализации, системы принятия решений, пользовательские приложения, панели инструментов, машинное обучение, бизнес-аналитику и другие системы.
#инфографика
📌То, что зацепило на этой неделе:
⚡Microsoft на .NET Conf 2023 представила релиз .NET 8. Сложно назвать тип приложения, который нельзя реализовать с помощью этой платформы. Отдельно опубликованы ASP.NET Core 8.0, Entity Framework Core 8.0, WPF 8, Windows Forms 8, проект Aspire 8 для создания облачных приложений, .NET MAUI 8, а также выпуски языков C# 12 и F# 8.
🤖Вдохновленные OpenAI DevDay, Игорь Котенков и Павел Комаровский написали отличную статью про главное событие в мире ИИ. Вас ждет:
• рассказ про то, что произошло в GenAI за более чем полгода с момента выхода GPT-4;
• декомпозиция недавней конференции OpenAI DevDay и оценка её влияния на рынок;
• прекрасный, но пугающий рассказ об AI-агентах и нашем будущем.
📝 Опубликован 230-страничный отчёт исследователей Microsoft о применимости и навыкам GPT-4.
🦀 Выпуск Rust 1.74. О новых фичах языка читайте здесь на русском.
💻 Опубликована 62 редакция рейтинга самых высокопроизводительных суперкомпьютеров.
#чтопроисходит
🤔 Переосмысление привычных нам уровней разработчиков (junior, middle, senior)
Автор делится видением уровней разработчиков, в которых главный критерий разделения — способность решать проблемы. По его классификации 2-й и 4-й уровни дают предсказуемый результат эффективным способом, отличается только сложность решаемой проблемы:
1️⃣ Простое решение проблем случайным образом
2️⃣ Простое решение простых проблем
3️⃣ Решение сложных проблем случайным образом
4️⃣ Простое решение сложных проблем
По сравнению с классическим набором уровней эти уровни:
☑️ Более прозрачны
☑️ Измеримы
☑️ Соотносятся с опытом
☑️ Соответствуют ожиданиям
👉 Подробнее о каждом уровне с примерами читайте в статье
☝️🚀 Рейтинг Low Code опенсорсных инструментов разработки за последние 28 дней
🔝 Топ-5 в нашей подборке:
1️⃣ AppFlowy-IO/AppFlowy — альтернатива Notion на Flutter и Rust. Вы отвечаете за свои данные и настройки.
2️⃣ supabase/supabase — альтернатива Firebase. Один из самых быстрорастущих проектов на GitHub.
3️⃣ refinedev/refine — основанный на React фреймворк для создания внутренних инструментов, панелей администратора, информационных панелей и приложений B2B с акцентом на гибкость.
4️⃣ n8n-io/n8n — расширяемый инструмент автоматизации рабочих процессов.
5️⃣ appwrite/appwrite — end-to-end бэкенд сервер для веб-, мобильных, нативных или серверных приложений, упакованный в виде набора микросервисов Docker.
#инструменты
Хочу вас огорчить, программисты не делают игры — их делают дизайнеры и арт...
— правдивое начало статьи о разработке в геймдеве.
🤔 Можно уволить программиста, на его место придет другой и через условные месяц-два-полгода начнет закрывать таски не хуже. Если увольняется дизайнер, его монстр, пушка или контент повисает без хозяина и без «видения». Если её не перехватил сосед (а у соседа свой монстр), то в большинстве случаев его работа просто уходит в стол и монстра пишут заново на тех же ассетах и принципах, но заново.
🤯 Это не поток мыслей, а мнение и опыт автора статьи и разработчика игр в Ea Spb. И как вы уже поняли, этот материал об обратной стороне любви к играм и том, что из себя представляет геймдев в конкретной компании.
💬 Ситуация в других компаниях может отличаться. Если у вас есть положительный опыт, поделитесь в комментариях👇
💻 Если ввести в браузере «стажировка в Aston», то можно узнать, как начать карьеру в ИТ и найти первую работу
Каждый месяц мы запускаем набор на стажировки по разным направлениям👍
Подавать заявку можно без практического опыта в ИТ.
Достаточно быть коммуникабельным, мотивированным и иметь крепкие теоретические знания по выбранному направлению. Мы гарантируем трудоустройство всем, кто успешно пройдет стажировку 🕺
💯 Оставить заявку можно здесь
Программирование — это не просто работа, это образ жизни и страсть для многих людей. Кто-то находит в кодинге творчество, кто-то — интересные задачи и возможности для саморазвития.
Расскажите, что именно вдохновляет вас писать код и создавать новые программы.
👉Опрос тут👈
🤖📜 Искусственный интеллект: краткая история
Впервые люди задумались о мыслящих машинах ещё в античности — у древних греков, например, был миф о гигантском бронзовом автоматоне Талосе. Позднее люди и вовсе решили, что мышление — это механический процесс, а значит его можно имитировать.
Подробнее о том, как мы докатились до создания искусственного интеллекта, читайте в статье 👀
🎙️ArchDays — конференция по микросервисам и архитектуре IT-решений. Ниже — записи свежих и не только докладов с митапов, приуроченных к конференции.
📌 Выберите и смотрите ту тему, которая вам интересна:
📺 Сага — решение технической проблемы или доменный процесс / Михаил Натаров
📺 Об архитектуре системы моделирования на базе цифровых двойников производства / Илья Смирнов
📺 Многоликий DDD / Сергей Баранов
📺 Тернистый путь инструмента цифрового проектирования / Виктор Выскребенцев
📺 Проектирование БД: от NF к денормализации данных / Антон Цитульский
📺 Continuous deployment — следующая ступенька после Continuous delivery / Иван Волынкин
📺 Как автоматизация и AI позволяют сократить время устранения уязвимостей / Антон Башарин
#чтопроисходит #проектирование_систем
🤔 Что самое трудное в работе программиста? Правильно, выдумывать имена для переменных.
💬 Как вы считаете, насколько важен хороший нейминг для сущностей (функций, переменных и т. д.) в вашем коде? И есть ли у вас или в вашей команде общепринятые правила или лучшие практики, которым вы следуете при нейминге?
Если да, поделитесь опытом👇
#холивар
📈 Octoverse: состояние открытого исходного кода и развитие ИИ в 2023 году
Мы кратко уже касались этой темы, но здесь есть на чем остановиться более подробно:
🔝 JavaScript — снова в топе среди самых популярных ЯП, после него Python и Java
🔝 TypeScript впервые обогнал Java как третий по популярности язык среди проектов OSS
🔝 Значительный рост в новых проектах показали Kotlin, Rust, Go и Lua
🔝 Увеличилось количество популярных языков и платформ для анализа данных и операций (например, T-SQL и TeX)
🔝 Разработчики все чаще используют облачные нативные приложения, автоматизируют свои рабочие процессы и экспериментируют с ИИ-моделями
🔝 ИИ-проекты продвинулись от узкоспециализированных исследований к более массовому внедрению
🔝 К 2027 году Индия обгонит США как крупнейшее сообщество разработчиков на GitHub
🔝 В 2023 году Shell и Hashicorp Configuration Language снова стали ведущими языками в опенсорсных проектах
#инфографика
❤️🙏 Путь к мечте: как инвалидность не помешала стать разработчиком и продолжить борьбу за здоровье
Автор «Библиотеки программиста» Станислав Герасимов, инвалид с детства, делится жизненной историей становления профессиональным разработчиком.
В жизни Стаса было всё, но, возможно, именно путь к мечте помог справиться со всеми жизненными трудностями и добиться поставленной цели.
🔗 Читать статью
🔗 Зеркало
💡 Как правильно задавать вопросы опытным разработчикам: просто, как раз, два, три
1️⃣ Самостоятельный поиск решения: прежде, чем идти к более опытному коллеге с вопросом, попытайтесь решить его самостоятельно.
◆ Попытайтесь найти ошибки или вернуться к коду на следующий день. Иногда ошибка очевидна, но ты ее просто не замечаешь.
◆ Попытайтесь найти ответ с помощью Google/ИИ-помощника: прежде, чем просить о помощи, убедитесь в уникальности проблемы.
◆ Попытайтесь найти ответ в руководстве/документации.
2️⃣ Обращаемся за помощью: чем четче и понятнее вы сформулируете вопрос, тем выше вероятность получить на него удовлетворительный ответ. При этом важно:
◆ ввести в контекст;
◆ описать и воспроизвести проблему;
◆ обозначить желаемый результат.
3️⃣ Поблагодарите и поделитесь решением: другие новички, которые столкнутся с подобной проблемой, значительно сэкономят время на ее решение.
#советы_для_джунов
🤯 Только ленивый не знает о том, что происходит сейчас в OpenAI. А там уже с пятницы очень весело! Сейчас расскажем👇
В эту пятницу совет директоров OpenAI отправил в отставку Сэма Альтмана, сделав это за 20 минут в Google Meet. После чего об уходе из компании заявили соучредитель OpenAI Грег Брокман, директор по исследованиям Якуб Пачоцки и другие ключевые специалисты.
Примечательно, что Microsoft, которая инвестировала миллиарды долларов в OpenAI, узнала о решении отправить в отставку гендира последней и всего за считаные минуты до того, как эта информация была предана широкой огласке.
📌Причины отставки Альтмана по версиям СМИ:
✖️У Альтмана был конфликт с соучредителем/техдиром компании Ильей Суцкевером и другими членами совета директоров
✖️Суцкеверу месяц назад сократили обязанности в OpenAI из-за его разногласий с Альтманом и Брокманом
✖️У Альтмана были предпринимательские амбиции, хотя Суцкевер и другие члены совета директоров были сосредоточены на первоначальной некоммерческой миссии OpenAI
💬Как думаете, какое будущее ждет OpenAI с ее ChatGPT и другими продуктами?
👍 — дальше будет развиваться, ничего не изменится
🤔 — потихоньку начнет сдуваться
💯 — жду новый стартап от Сэма Альтмана и команды
👾 — свой вариант в комментариях
#новости
∞ Дорожная карта DevOps-инженера в 2023 году
Дорожная карта — это комплексный процесс изменения и развития карьеры сотрудника внутри организации. Они включают в себя изменение должности, повышение по иерархической лестнице, переход на другую функциональную область или отдел, а также изменение места работы.
Этот процесс может быть вертикальным, когда сотрудник переходит на более высокую должность, или горизонтальным — сотрудник меняет функциональную область или отдел, но остается на той же должности.
Подробная и актуальная дорожная карта по DevOps ждет вас здесь.
📌 Примеры дорожных карт и полезные материалы по теме:
👨💻 Как стать фрилансером и где найти первый заказ: дорожная карта
🍏 Карьерный гид от новичка до профи: дорожная карта iOS-разработчика
🧔 Повышение до тимлида: дорожная карта
🐍 Дорожная карта Python-разработчика
🤝 5 soft skills, которые помогут тебе дорасти до Senior-разработчика
#гайд
В телеграм запустили игровой симулятор профессий
Самолет вместе с агентством Ар запустили игру «Твой день» — там можно попробовать себя в роли разработчика или продакт менеджера, поучаствовать в созвонах, пообщаться с коллегами и получить интересные задачки.
Чтобы начать переходите в @arrr_day_bot, выбирайте понравившийся проект от Самолета и решайте рабочие моменты с коллегами. Дошедших до конца ждет приятный бонус в виде списка актуальных вакансий!
Проект временный, так что успейте опробовать симулятор до 18 ноября.
Реклама. Рекламодатель