Программирование {BookFlow}
16.6K subscribers
1.53K photos
455 videos
145 files
2.05K links
Мы публикуем лекции и книги по программированию, видеоуроки, доклады с IT конференций, новости технологий.

Группа в https://vk.com/bookflow.

По всем вопросам @evgenycarter

РКН https://clck.ru/3KoAbH
Download Telegram
Сессии, куки, JWT, токены, SSO и OAuth 2.0

👉 @Bookflow
👍9
⚙️ Микросервисы начинают тормозить под нагрузкой?

💡 Узнайте, как масштабировать и оптимизировать систему с помощью CQRS и Event Sourcing на .NET Aspire.

На открытом вебинаре «Оптимизация микросервисов с CQRS и Event Sourcing на .NET Aspire» 19 августа в 20:00 МСК разберем:
◽️ Ограничения классических микросервисов при высокой нагрузке.
◽️ Принципы разделения команд и запросов (CQRS) и хранения истории через Event Sourcing.
◽️ Практическую реализацию: сервис заказов с «команда-обработчик» и хранением событий в MongoDB.
◽️ Конфигурацию проекций для чтения данных.

❗️ Вы освоите оркестрацию через .NET Aspire (API Gateway, Order Service, база событий), внедрите логирование и трейсинг через OpenTelemetry, а также протестируете создание заказа, обновление статуса и визуализацию потока событий.

➡️ Посетите открытый урок и получите скидку на большое обучение «C# ASP.NET Core разработчик»: https://vk.cc/cOAUR7

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Media is too big
VIEW IN TELEGRAM
🔥 СВЕЖИЙ АД, ПРЯМО В ТВОЙ МОНИТОР! 💀

Они думали, что ад остался на Марсе…
Они ошибались.
DOOM возвращается — теперь в виде лёгкого, как бензопила в руках Мародёра, и безжалостного, как ракета в лицо кибердемону, порта на Go.
Никаких платформенных цепей. Никакого CGo. Только чистая ярость и кросс-компиляция, рвущая реальность на куски.

🔸 Запускается везде, где бьётся сердце Go
🔸 Минимум балласта — только стандартная библиотека Go
🔸 Полная линейка ада: DOOM, DOOM II, Ultimate DOOM, Final DOOM
🔸 WAD — твой пропуск в бездну: приноси своих демонов
🔸 Память в бронежилете: защита от переполнений буфера (но не от зубов какодемона)
🔸 Оружие массового поражения — кросс-компиляция под любую цель

Подготовься.
Натяни броню.
И перезаряди BFG…

https://github.com/AndreRenaud/gore

👉 @Bookflow
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍2
Promises Training

Проект помогает углубить фронтенд-разработчику свои знания о промисах в Javascript.

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

https://github.com/henriqueinonhe/promises-training

👉 @Bookflow
👍4
Пишем игру для NES на C

Всем привет. Я Даг. Добро пожаловать в мой учебник - Как запрограммировать игру NES на C. Вы можете сделать оригинальную игру Nintendo, которая будет играть на настоящей консоли NES (или эмуляторе).

Давайте поговорим о NES.
Выпущена в Японии (Famicom) в 1983 году, в США — в 1985 году.

Процессор — Ricoh 2A03, 1.79 МГц, клон 6502 (без десятичного режима) со звуковой схемой. Чип 6502 был очень популярен в то время и использовался, например, в Apple II и Atari 2600.

https://nesdoug.com/

👉 @Bookflow
👍8
В 2002 году мир математики стал свидетелем исторического момента, когда российский математик Григорий Перельман представил первую из трех новаторских работ, представивших доказательство неуловимой гипотезы Пуанкаре. Эта гипотеза ставила в тупик математиков более столетия, что сделало ее одной из самых сложных нерешенных проблем в этой области.

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

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

Но отказ Перельмана принять признание на этом не ограничился. Математический институт Клея также пообещал существенное финансовое вознаграждение в один миллион долларов за доказательство гипотезы Пуанкаре. Поступок, который еще больше сбил с толку многих, Перельман отказался и от этой значительной суммы. Его цитировали: «Меня не интересуют деньги или слава; я не хочу, чтобы меня выставляли напоказ, как животное в зоопарке».

Действия Перельмана оставили в мире больше вопросов, чем ответов. Его отказ как от медали Филдса, так и от премии в миллион долларов пролил свет на его глубоко укоренившиеся ценности и приоритеты. Это выдвинуло на первый план математика, движимого не похвалами или богатством, а непоколебимой преданностью делу чистой математики и поиску истины.

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

👉 @Bookflow
20👍5🫡2👎1
💪 Хотите работать в финтехе? Освойте Solidity!

👉 Востребованное обучение для разработчиков с опытом программирования от года, которые хотят получить навыки написания кода и аудита безопасности, чтобы попасть в одну из самых перспективных и высокооплачиваемых сфер IT.

Освойте разработку децентрализованных приложений на профессиональном уровне всего за 5 месяцев на онлайн-курсе «Solidity Developer» от OTUS!

Забудьте о скучном обучении — здесь вас ждут настоящие челленджи и нестандартные практические решения. А еще крутые проекты для портфолио!

👉 Пройдите вступительные тест для оценки подходит ли вам курс: https://vk.cc/cOO92P

🎁 Получите welcome скидку для успешное прохождение теста. Подробности уточняйте у менеджера.

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Space Invaders from Scratch. Part 1

В этой серии постов я собираюсь создать клон классической аркадной игры Space Invaders на C++, используя всего несколько зависимостей. В этом посте я настрою окно с контекстом OpenGL 3.3, используя GLFW и GLEW как единственные зависимости для этого простого клона.

https://nicktasios.nl/posts/space-invaders-from-scratch-part-1.html

Код к этому посту на Github

#cpp

👉 @Bookflow
2👍3
Space Invaders from Scratch. Part 2

В этом посте я установлю необходимые шейдеры OpenGL, чтобы нарисовать инопланетный спрайт!

https://nicktasios.nl/posts/space-invaders-from-scratch-part-2.html

Код к этому посту на Github

#cpp

👉 @Bookflow
👍21
Ваши .NET проекты превратились в спагетти-код — пора перейти к Clean Architecture

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

Вебинар «От N-Layer к Clean Architecture: эволюция проектирования .NET приложений» в рамках курса «C# Developer. Professional»

→ 27 августа, 20:00

Программа:

→ Сравнение подходов: классическая N-Layer vs современная Clean Architecture
→ Принцип инверсии зависимостей (DIP) и Dependency Injection как основа трансформации
→ Практическая демонстрация: как реорганизовать N-Layer проект в Clean Architecture
→ Достижение независимости бизнес-логики от инфраструктуры

Бесплатная регистрация — превратите хаос в порядок: https://vk.cc/cOTrQO

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
This media is not supported in your browser
VIEW IN TELEGRAM
Space Invaders from Scratch. Part 3

В этом посте я сделаю игровой цикл с фиксированным временным шагом, добавлю игрока и инопланетян, а также добавлю анимацию спрайтов.

https://nicktasios.nl/posts/space-invaders-from-scratch-part-3.html

Код к этому посту на Github

#cpp

👉 @Bookflow
👍21👌1
Стек микросервисов для продакшена

👉 @Bookflow
👍4
Media is too big
VIEW IN TELEGRAM
Neural Networks: Zero to Hero

Курс по нейронным сетям, который начинается с самых основ.

Курс состоит из серии видео на YouTube, где мы вместе пишем код и обучаем нейронные сети. Jupyter-ноутбуки, которые мы создаём в видео, собраны здесь, в папке lectures. У каждого занятия есть набор упражнений, указанный в описании под видео.

Лекции:

1. Подробное введение в нейронные сети и обратное распространение ошибки: создаём micrograd
2. Подробное введение в языковое моделирование: создаём makemore
3. Создание makemore, Часть 2: многослойный перцептрон (MLP)
4. Создание makemore, Часть 3: функции активации и градиенты, BatchNorm
5. Создание makemore, Часть 4: становимся мастером backprop
6. Создание makemore, Часть 5: создаём WaveNet
7. Создаём GPT: с нуля, пошагово, в коде
8. Создаём токенизатор для GPT

https://github.com/karpathy/nn-zero-to-hero/

👉 @Bookflow
👍31👎1
Assembler для Windows в Visual Studio

1️⃣Часть первая

В этой статье я покажу как написать приложение для windows на ассемблере. В качестве IDE будет привычная многим Visual Studio 2019 со своими привычными плюшками - подсветка кода, отладка и привычный просмотр локальных переменных и регистров. Собирать приложение будет MASM, а значит, у нас будут и масмовские плюшки. Это будет полноценное оконное приложение с меню, иконкой, отрисовкой, выводом текста и обработкой мыши с клавиатурой.

https://habr.com/ru/articles/763636/


2️⃣Часть вторая — MASM x64 и юникод

Вторая часть рассказа об ассемблере под Windows. Здесь я расскажу про 64-разрядные приложения в Windows, чем отличается MASM 64 от MASM 32, про макросы из MASM 64 SDK, как работать с Юникодом на примере простого консольного REPL'а, а ещё как обойтись без Visual Studio и пользоваться masm просто из командной строки.

https://habr.com/ru/companies/ruvds/articles/884240/


👉 @Bookflow
👍6🤷‍♂1
Микросервисы vs Монолит

➡️Что такое Монолит?

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

➡️Характеристики монолита:

→ Единая кодовая база и единый процесс развертывания.
→ Все функции и модули взаимосвязаны.
→ Легко начать разработку и первое развертывание.

➡️Преимущества монолита:

→ Просто разрабатывать и тестировать на ранних этапах.
→ Прямолинейный процесс деплоя.
→ Производительность может быть выше для небольших приложений, так как всё работает вместе.

➡️Недостатки монолита:

→ Сложно масштабировать по мере роста системы.
→ Небольшое изменение может потребовать развертывания всего приложения заново.
→ Трудно большим командам работать независимо, не сталкиваясь с конфликтами.
→ Ошибка в одном модуле может повлиять на всю систему.



➡️Что такое Микросервисы?

Микросервисная архитектура разбивает приложение на небольшие, независимые сервисы, которые взаимодействуют через API (часто HTTP/REST или через очереди сообщений). Каждый сервис отвечает за конкретную бизнес-функцию.

➡️Характеристики микросервисов:

→ Несколько небольших сервисов, у каждого своя кодовая база.
→ Взаимодействие между сервисами через API или систему сообщений.
→ Независимое развертывание и масштабирование каждого сервиса.

➡️Преимущества микросервисов:

→ Легче масштабировать отдельные части системы.
→ Команды могут работать независимо над разными сервисами.
→ Гибкость технологий (разные сервисы могут использовать разные языки и базы данных).
→ Сбой одного сервиса с меньшей вероятностью выведет из строя всю систему.

➡️Недостатки микросервисов:

→ Более сложное проектирование и управление.
→ Необходимы развитые системы мониторинга и коммуникации между сервисами.
→ Увеличивается сложность деплоя и процессов DevOps.



➡️Монолит vs Микросервисы

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



➡️Примеры из реального мира:

Монолит: ранние версии Twitter и LinkedIn.
Микросервисы: Netflix, Amazon, Uber.

👉 @Bookflow
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21🤣1
Стартует новый сезон бесплатных тренировок Яндекса по алгоритмам и ML

Тот самый момент, когда забег заканчивается не финишной ленточкой, а офером! «Тренировки. Большой забег» — это 4 недели практики, которые помогут вам подтянуть знания и подготовиться к техсобеседованию в Яндекс.

Выбирайте направление:

— Алгоритмы: решайте задачи на словари, множества, указатели, бинарный поиск и др. Новый сезон будет сфокусирован на решении задач, которые чаще всего встречаются на собеседованиях и в реальной работе. Если они вызывают сложности — смотрите онлайн-разборы, где преподаватель объяснит, как их решать.
Успейте зарегистрироваться до 29 сентября.


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


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


Участие бесплатное, материалы остаются с вами навсегда.

Регистрация уже открыта.
1👍1
Media is too big
VIEW IN TELEGRAM
Практика языка C.
Константин Владимиров.

На этом занятии мы завершим первый семестр знакомства с основами языка C и разберём многомодульные программы и структуры данных.

00:00 Хеш-таблицы.
15:10 Алгоритм Рабина-Карпа.
22:30 Range-based queries и снова о деревьях.
29:42 Многомодульные программы.
36:30 Структуры данных.
42:40 Литература и задачи.
44:45 Демонстрация многомодульных программ.

источник

👉 @Bookflow
👍1