💬 А что это вообще такое — быть программистом?
Герой и автор статьи, выпускник ВМК МГУ, сеньор Python-разработчик с более чем 10-летним стажем, решил порассуждать на эту тему со своей колокольни. В статье очень много полезных мыслей для тех, кто вообще об этом задумывается. Но самое ценное и, кажется, волнующее многих, сосредоточено здесь👇
📌 Нужно ли быть умным, чтобы программировать? Не нужно быть очень умным и не нужно всё знать, чтобы нормально жить. А вот быть упорным — обязательно. Выбейте себе на руке татуху stubborn и смотрите на неё постоянно до просветления.
📌 Вот ещё несколько советов для тех, кто не мегамозг:
🔹Если ничего не получается, то бросьте всё нафиг, поспите, и завтра утром всё получится.
🔹Если непонятно, что делает код, то разбейте его на небольшие функции и дайте функциям и переменным нормальные названия.
🔹С первого раза не заработает.
🔹Работайте в команде более опытных людей или найдите ментора — очень важно, чтобы кто-нибудь говорил вам, насколько ваш код ужасен, иначе вы будете жить годы в пузыре собственного невежества и думать, что всё норм.
📌 Ну и оставим здесь цитату автора. С ней ведь все согласны?
«Я тащусь от программирования, меня прёт с него, а уж когда моё приложение не падает в первые 10 минут — это вообще восторг. Программирование — это, блин, стиль жизни, это восхищение изящными решениями, это отчаяние из-за того что опять нихрена не работает непонятно почему, это возможность творить, создавать и ломать.»
#инфографика
CI/CD пайплайн в деталях
1️⃣ SDLC с CI/CD
🔸Жизненный цикл разработки программного обеспечения (SDLC) состоит из нескольких ключевых этапов: разработка, тестирование, деплой и cопровождение. CI/CD автоматизирует и интегрирует эти этапы, обеспечивая более быстрые и надежные выпуски. Когда код помещается в Git-репозиторий, он запускает автоматизированный процесс сборки и тестирования.
🔸Для проверки кода запускаются сквозные тестовые примеры. Если тесты пройдены, код может быть автоматически развернут в staging/production окружении. Если проблемы обнаружены, код отправляется обратно в разработку для исправления ошибок. Эта автоматизация обеспечивает быструю обратную связь с разработчиками и снижает риск ошибок в продакшене.
2️⃣ Разница между CI и CD
🔸Непрерывная интеграция (CI) автоматизирует процессы сборки, тестирования и слияния. В рамках CI запускаются тесты всякий раз, когда код фиксируется для раннего обнаружения проблем интеграции. Это поощряет частые фиксации кода и быструю обратную связь.
🔸Непрерывная доставка (CD) автоматизирует процессы выпуска, такие как изменения инфраструктуры и развертывание. Это гарантирует, что программное обеспечение может быть надежно выпущено в любое время с помощью автоматизированных рабочих процессов. CD также может автоматизировать этапы ручного/аппрувал тестирования, необходимые перед деплоем в продакшене.
3️⃣ CI/CD пайплайн
🔸Типичный CI/CD пайплайн состоит из нескольких связанных этапов:
🗄 Разработчик фиксирует изменения кода в системе управления версиями
🗄 CI-сервер обнаруживает изменения и запускает сборку
🗄 Код компилируется и тестируется
🗄 Результаты тестирования сообщаются разработчику
🗄 В случае успеха артефакты развертываются в staging окружениях
🗄 Дальнейшее тестирование может быть проведено на стадии подготовки перед выпуском
🗄 Система CD внедряет утвержденные изменения в продакшен
#новости
⚡️Компания OpenAI приобрела команду Global Illumination
🎮 Новый проект, связанный с ИИ? А вот и нет. Это студия выходцев из бигтеха, которая разрабатывает open source аналог Minecraft под названием Biomes. В самой студии работало порядка десяти человек.
Официальный анонс говорит лишь о том, что это присоединение «для работы над основными продуктами, включая ChatGPT».
💬Как вы думаете, к чему все это?
📌Вот некоторые мысли:
OpenAI уже работали с Minecraft. Год назад они выпустили статью Video PreTraining (VPT): Learning to Act by Watching Unlabeled Online Videos о том, как обучать агента играть по видео на YouTube.
В целом понятно, для чего это нужно вне игр: GPT-6 может посмотреть весь TikTok и YouTube, и узнать о нашем мире столько, сколько никаким текстам не снилось.
Возможно, Biomes будет играть роль среды, в которой агенты на основе больших языковых моделей будут «жить» сами по себе и решать свои проблемы.
Наработки OpenAI могут пойти и в сторону работы из Stanford Generative Agents: Interactive Simulacra of Human Behavior, где 25 разных ботов с языковыми моделями и жили в деревне, общались друг с другом — только здесь все в 3D, и с куда более широким набором возможностей.
#новости #чтопроисходит
🔥 Новости и обновления для разработчика: подборка за неделю
◾Команда Mozilla анонсировала реализацию поддержки в мобильной версии браузера всех имеющихся для Firefox дополнений. Firefox становится первым мобильным браузером для Android, поддерживающим полноценную открытую экосистему дополнений.
◾Сообщество берет в свои руки разработку Vim, оставшегося без сопровождающего после смерти Bram Moolenaar
◾Команда Ubuntu намерена на следующей неделе задействовать по умолчанию в тестовых сборках Ubuntu 23.10 новый менеджер приложений Ubuntu Store, написанный на Dart + Flutter и распространяемый под лицензией GPLv3.
◾Релиз Flutter 3.13: разработчики ускорили движок рендеринга и обновили Engine API для складных смартфонов.
◾Релиз Electron 26.0.0, платформы создания приложений на базе движка Chromium
◾Релиз дистрибутива Devuan 5.0, форка Debian 12 без systemd.
◾Команда Apple опубликовала исходные коды низкоуровневых системных компонентов macOS 13.4 и 13.5 (Ventura)
◾Debian празднует своё тридцатилетие. Дистрибутив был анонсирован в далеком 1993 году Яном Мёрдоком (Ian Murdock) в списке рассылки comp.os.linux.development
◾Релиз nginx 1.25.2
◾Команда Google представила релиз Chrome 116. Одновременно доступен стабильный выпуск свободного проекта Chromium, выступающего основой Chrome.
◾Релиз проекта fheroes2 1.0.7, который воспроизводит движок игры Heroes of Might and Magic II с нуля
◾Команда Google намерена реализовать несколько шагов для усиления использования HTTPS по умолчанию. Конечная цель — включение для всех пользователей режима HTTPS-first для автоматического перенаправления HTTP-запросов на HTTPS.
◾ Релиз GHC 9.4.6 (Glasgow Haskell Compiler), компилятора для функционального языка программирования Haskell
◾Разработчик Иван Кулешов из JetBrains представил проект Mac mini на базе чипа M1 с поддержкой питания по Ethernet.
◾Минцифры оценило дефицит IT-специалистов в 500-700 тыс. человек при текущем составе IT-отрасли в 740 тыс. сотрудников
Apple Подкасты #подкасты
🎙️Подкаст Подлодка: Data-engineering
Чтобы принимать разумные решения, нужны данные. А чтобы данные были качественные и своевременные — нужны дата-инженеры! Кто они, чем занимаются и при чем тут биг дата — разбираемся вместе с Глебом Кантеровым.
⏯ YouTube | Apple Подкасты | Google Подкасты | Яндекс Музыка
ИТ + научпоп + музыка = большой ИТ-пикник в Москве 💛
2 сентября Тинькофф, CodeFest и Мельница собирают большой благотворительный ИТ-фестиваль. Встречаемся в Коломенском на максимально летнем вайбе.
В программе: ИТ- и научпоп-лектории, выступления топовых спикеров, воркшопы, интерактивные зоны и вишенка на торте — музыкальные перформансы от Антохи MC, Zoloto, Therr Maitz, The Hatters, «Сироткина», а также секретного хедлайнера. Как думаете, кто им может быть?
Для участия нужно выбрать благотворительный фонд из списка и сделать донат от 1000 рублей. Подробности и регистрация — тут.
Реклама. АО "Тинькофф Банк"
💰 Обзор зарплат: сколько сейчас зарабатывают айтишники
В этой статье обсуждаем самую животрепещущую тему — зарплату. Присоединяйтесь :)
🔗 Читать статью
🔗 Зеркало
#вопросы_с_собесов
🤔С помощью чего в Git можно автоматически запускать пользовательские скрипты в случае возникновения определённых событий.
📌Речь идет о хуках, которые позволяют конфигурировать внутреннее поведение Git и запускать настраиваемые действия в ключевые моменты жизненного цикла разработки.
💡Хуки разделяются на серверные и клиентские. Если хуки на стороне клиента запускаются слиянием или созданием коммита, то на стороне сервера они инициируются сетевыми операциями, такими как получение отправленного коммита.
💡Обычно хуки используют, чтобы поддерживать политику коммитов, изменять среду проекта в зависимости от состояния репозитория и внедрять рабочие процессы непрерывной интеграции. Однако эти скрипты можно настраивать с учетом любых предпочтений, поэтому они помогут автоматизировать или оптимизировать практически любую сторону процесса разработки.
💡Все хуки Git представляют собой обыкновенные скрипты, которые Git исполняет в ответ на определенные события в репозитории.
💡Хуки находятся в каталоге .git/hooks каждого репозитория. Git автоматически заполняет этот каталог примерами скриптов при инициализации репозитория.
💡Для подключения собственного скрипта достаточно задать ему соответствующее имя (убрать .sample) и сделать исполняемым.
📝Для клиента существует множество различных хуков: уровня коммита, на основе e-mail и другие.
📝В дополнение к хукам на стороне клиента, вы можете использовать несколько важных хуков на сервере для вашего проекта. Эти скрипты выполняются до и после отправки на сервер.
❗«Библиотека программиста» ищет девушек, работающих в IT — разработке, тестировании, информационной безопасности и других направлениях
Мы проводим новое исследование, посвященное специфике работы женщин в IT — от сложностей и недостатков в работе до гендерных стереотипов.
Пройдите короткий опрос — он анонимный и займет не более 10 минут вашего времени.
Ссылка тут.
👉 Хотите научиться эффективно работать с базами данных?
Наращивайте объем знаний и навыков на вебинаре, приуроченном к старту онлайн-курса «Базы данных» в OTUS.
✅ 16 августа — «MySQL NDB cluster: шардинг и особенности архитектуры»
🔹 На открытом уроке мы разберём особенности архитектуры и компоненты с Евгением Аристовым, архитектором высоконагруженных баз данных и инфраструктуры, автором книг по PostgreSQL и 8 практических курсов по PostgreSQL, NoSQL, Mongo etc
🎁 На занятии разыграем книгу «PostgreSQL 14. Оптимизация, Kubernetes, кластера, облака».
👉 ПРОЙДИТЕ ТЕСТ для регистрации на открытый урок и проверьте свой уровень компетенций
https://otus.pw/9HHf/Нативная интеграция. Информация о продукте www.otus.ru
#инструменты
⚡️Тренд с созданием собственных ИИ-инструментов и помощников подхватывает команда Stack Overflow, и анонсирует ряд инструментов и сервисов по эгидой OverflowAI, в составе которых:
🤖OverflowAI Enterprise Knowledge Ingestion
🤖Улучшенный поиск OverflowAI
🤖Плагин OverflowAI для Visual Studio Code
🤖Интеграция OverflowAI Slack
🚀 Новые инструменты приносят обширные знания из 58 миллионов вопросов и ответов сообщества Stack Overflow в одну рабочую область. И несмотря на то, что некоторые сервисы платные, это достаточно большой рывок вперед!
🔗 Читать roadmap в официальном блоге
Под этим постом вы можете задать любой вопрос спикеру!
Ссылка на трансляцию в YouTube – https://www.youtube.com/watch?v=xOQ2LidDEVo
Запись эфира опубликуем здесь – /channel/proglib_academy
Подробности о курсе «Алгоритмы и структуры данных» – https://proglib.io/w/788d77ba
Перед вами работа 17-летней Лекси Маттик, суть которой — понять, что именно происходит, когда вы запускаете программу на своем компьютере.
С помощью простых иллюстраций вы узнаете, как работает многопроцессорность, что такое системные вызовы, как компьютеры управляют памятью с помощью аппаратных прерываний и как Linux загружает исполняемые файлы.
📌 В книге объясняется:
🔸Как процессоры выполняют инструкции вашего приложения
🔸Как ОС использует прерывания для переключения ЦП между задачами
🔸Способ, которым виртуальная память распределяет физическую память между процессами
🔸Процессы компиляции и компоновки приложений
«Библиотека программиста» запустила два новых канала для C++ разработчиков и тех, кто хочет ими стать👨🏫
В них мы:
🔸тренируемся на практических задачах
🔸отвечаем на популярные вопросы с собеседований
🔸проверяем свои знания
Подписывайтесь:
👉Библиотека собеса по C++ — тут мы готовимся к интервью
👉Библиотека задач по C++ — тут решаем задачи, проходим тесты и изучаем код
🔍Насколько легко «войти в айти»?
IT — перспективная отрасль с высокими зарплатами и огромной конкуренцией. Собираем ваши истории: расскажите, как вам удалось сменить профессию (или сразу найти себя), какие шаги вы для этого предприняли и с какими сложностями пришлось столкнуться.
👉Пройдите наш 10-минутный опрос по ссылке.
🎙Подкаст Полный Гёдель: когда ИИ начнет писать код лучше, чем программисты — что тогда?
Артем Малышев, простой гуманитарий, который начитался научной-фантастики, и теперь любит порассуждать о том, как нас захватят роботы, и Юрий Окуловский, — могут сойтись в представлениях о будущем технического прогресса.
Юрий Окуловский — data scientist и кандидат физ мат наук. Он работает с нейросетями почти 20 лет. Но сейчас, когда хайп вокруг ИИ становится надоедающе громким, а «говорящие» модели обыденностью — Юрий на полном серьезе верит в технологическую сингулярность.
Что будет, когда ИИ начнет писать код лучше программистов? Что если люди перестанут успевать за новыми технологиями будущего? Что если они будут слишком очеловечивать говорящих ИИ компаньонов? Как будет выглядеть будущее.
📌 В этом выпуске:
0:00 — Начало
1:56 — Что еще за сингулярность
5:20 — Мы уже не понимаем, как работают нейросети
9:28 — Как изменится программирование из-за ИИ
13:09 — Проблемы, тормозившие ИИ в 20 веке — уже решены
19:00 — Профессии, которые уже под силу ИИ
24:10 — Кто сейчас контролирует развитие ИИ
32:19 — Должен ли ИИ быть в опенс сорсе
38:04 — Станет ли ИИ инструмент достижения всеобщей свободы
48:18 — Искусственное сознание — это вымышленный концепт?
1:07:01 — Что если люди перестанут понимать код, который пишет ИИ
1:19:15 — Попытка прогноза — как будет выглядеть мир после технологической сингулярности
⏯ YouTube | Apple Подкасты | Google Подкасты
💬 Ну что, когда нас уже заменит этот ваш ИИ?
👾 — никогда, фигня все это
🤔 — я незаменим
🤩Open Source Software Insight — удивительный сервис, который позволяет анализировать данные разработчиков и репозиториев на основе более чем 6 миллиардов событий Github.
Просто задайте свой вопрос на естественном языке, и Data Explorer сгенерирует SQL, запросит данные и представит результаты визуально.
OSS Insight обеспечивает углубленный анализ отдельных репозиториев GitHub и разработчиков, а также возможность сравнивать два репозитория с использованием одних и тех же показателей.
Open Source: ключевые вызовы для разработчиков
Сообщество Open Source переживает непростые времена. С одной стороны, наблюдается огромный рост популярности и влияния проектов с открытым исходным кодом. С другой стороны, нарастают вызовы внутри самого движения: конфликты между бизнесом и разработчиками, нарушения компаниями лицензий, проблемы с безопасностью кода.
Евангелист-архитектор из VK Tech Саша Белоцерковский, ранее совмещавший волонтерство в Open Source с работой в Microsoft, недавно опубликовал на Хабре любопытный пост. В нем Саша рассказывает про последние 15 лет и текущее состояние Open Source сообщества. По сути, это выжимка по самым интересным темам митапа с участием нескольких членов сообщества, в том числе мейнтейнеров core.js и KPHP.
Полный текст статьи, ссылки на видео и другие источники — на Хабре.
#холивар
💬 Как вы относитесь к фреймворку Flutter и языку программирования Dart? Был ли у кого-то опыт использования данных технологий для разработки проектов?
🤔Наряду с удобством и достоинствами Flutter + Dart, у них есть ряд проблемных моментов, которые редко освещаются.
🤔Это и проблемный дизайн Dart как современного ЯП, и средства разработки, и ограничения Flutter. Возможно, в силу того, что это довольно современные технологии.
💬 Как вы считаете?
Как работает Chrome: наглядная иллюстрация от Alex Xu по мотивам статьи из официального блога
📌Ключевые процессы Chrome и то, что они контролируют:
🔹Browser: управляет адресной строкой, закладками, кнопками «назад» и «вперед» и т. д.
🔹Renderer: контролирует все, что находится внутри вкладки, на которой отображается веб-сайт.
🔹GPU: обрабатывает задачи GPU.
🔹Plugin: контролирует плагины, используемые веб-сайтами.
🔍Новые каналы по Data Science
Напоминаем про наши новые каналы по Data Science, в которых мы готовимся к собеседованиям проверяем себя на практических задачках — специально для специалистов по Data Science и тех, кто хочет ими стать👨🏫
Подписывайтесь:
👉Библиотека собеса по Data Science — тут мы готовимся к интервью
👉Библиотека задач по Data Science — тут решаем задачи, проходим тесты и изучаем код
👨💻❓15 вопросов, которые задают на собеседовании на C#-разработчика
В этой статье мы изучим часто задаваемые вопросы для собеседований на C#-разработчика, а также разберём ответы на них.
🔗 Читать статью
🔗 Зеркало
#холивар
💬 Какие инструменты вы используете в работе кроме самых необходимых вроде IDE/редактора и Git?
Веб-разработчики однозначно не могут обойтись без консоли разработчика браузера. Осталось выбрать своего фаворита между Chrome и Firefox.
🤔А что там по другим инструментам?
#чтопроисходит
🤖 Главные ИИ-новости за две недели:
▪️IBM и NASA объединяют усилия для анализа климатических данных с помощью открытой модели ИИ
▪️Alibaba открывает исходный код своей модели ИИ: новый вызов ИИ-гигантам
▪️OpenAI анонсировала шесть новых фич для ChatGPT
▪️ИИ перехватывает данные, прослушивая нажатия клавиш клавиатуры с точностью 95%
▪️Тим Кук говорит, что Apple встраивает искусственный интеллект в «каждый продукт»
▪️ИИ-приложения исчезают из App Store в Китае
▪️Google представила модель, которая может управлять роботами
▪️OpenAI грозит банкротство в 2024-м, но это не точно
▪️OpenAI представляет GPTBot, который сканирует веб-страницы для улучшения будущих моделей ChatGPT
▪️Google вводит проверку грамматики в строке поиска — новый ИИ-инструмент поможет вам писать без ошибок
▪️Stability AI представляет StableCode, генеративный ИИ для помощи и обучения разработчиков
▪️Zoom использует некоторые клиентские данные для обучения своей модели ИИ — новость, которая наделала много шуму
▪️Nvidia представила новое поколение чипов для ИИ с улучшенной производительностью
▪️Amazon представляет новый инструмент на основе ИИ для продавцов на своей площадке, который будет автоматически создавать описания товаров
▪️Toyota представила ИИ для автомобильной промышленности: от проектирования и разработки до производства и продаж
🔤 Промпт-инжиниринг: как правильно писать запросы нейросетям
Разберём, что же такое промпт-инжиниринг и как научиться писать качественные запросы для языковых моделей.
🔗 Читать статью
🔗 Зеркало
Яндекс Практикум запустил бесплатный курс “Основы работы с Git”. Вы сможете полностью освоить популярную систему контроля версий кода за 20 часов.
Курс будет полезен тем, кто только погружается в разработку, и тем, кто не первый год пишет код:
— новички освоят инструменты, которые точно пригодятся в профессии;
— знатоки структурируют знания и повысят свою продуктивность.
На курсе вы научитесь:
— Писать код вместе с другими разработчиками и разработчицами;
— Отменять и откладывать изменения в своих ветках;
— Использовать локальный и удалённый репозиторий;
— Соединять ветки и разрешать конфликты;
— Управлять репозиторием через IDE и консоль;
— Понимать принципы и культуру командной разработки.
И освоите необходимые инструменты и технологии:
— GitHub;
— Terminal;
— GitHub Desktop;
— Bitbucket;
— GitBash;
— GitLab.
Переходите по ссылке и начинайте заниматься уже сейчас.
Реклама АНО ДПО "Образовательные технологии Яндекса", ИНН:7704282033, erid:LjN8KE8Ur
Знаете ли вы, что последние несколько дней происходит вокруг фреймворка Moq? Кстати, количество его установок превышает цифру в 25 миллионов. И это только про предыдущую версию.
📌 Если вкратце, то:
🔸В какой-то момент поддержка проекта Moq стала несостоятельной.
🔸В январе мейнтейнер Moq написал об инструменте SponsorLink, который собирает адреса электронной почты GitHub и хэширует их, а также пытается запросить спонсорство в IDE, если пользователь еще не спонсирует его.
🔸В апрельском выпуске было указано, что это — не лучший подход с точки зрения конфиденциальности и GDPR. В то время автор не воспринимал эти претензии.
🔸В этом месяце автор реализовал этот инструмент в релизе, и многие люди (по понятным причинам) были застигнуты врасплох, когда сделали обновление.
💬А на чьей вы стороне? С одной стороны, автор вложил в проект много лет, так и не получив нормального спонсорства. С другой, к конфиденциальности все-таки есть вопросы.
Так или иначе, в этой фразе очень много смысла: «Вы можете ожидать чего-то от проекта с открытым исходным кодом в той мере, в какой вы вносите свой вклад в этот проект или готовы помочь. Все остальное должно быть благодарностью».
👍 — я на стороне автора moq
🌚 — как бы там ни было, конфиденциальность нарушать нельзя
#roadmap
⚡️На одном из самых популярных ресурсов с дорожными картами несколько обновлений в духе последних трендов:
🔸Prompt Engineering Roadmap
🔸Введение в большие языковые модели
🔸5 бесплатных ресурсов, которые помогут вам больше узнать про большие языковые модели и обработку естественного языка
#подкасты
🎙️Подкаст Подлодка: Dart
Есть хорошая такая вероятность, что когда-нибудь Netflix купит права на экранизацию истории создания и развития языка Dart — настолько она захватывающая!
Слава Егоров, лид команды нативного компилятора Dart, наблюдал за этой историей своими глазами, так как он был в команде разработки с нулевого дня.
Если вы хотите получше узнать про философию Dart, его основные языковые фичи, сильные и слабые стороны, не скатываясь в обсуждение Flutter — этот выпуск для вас!
➡️ YouTube | Apple Подкасты | Google Подкасты | Яндекс Музыка