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

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

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

РКН https://clck.ru/3KoAbH
Download Telegram
👾Самое время собрать свою команду из IT-акул: Открыта регистрация на самый масштабный онлайн-хакатон в мире!

💸 40 млн рублей призового фонда:
— 1 млн рублей — для тех, кто займёт первое место
— 600 тысяч — второе
— 400 тысяч — третье

💼 20 актуальных задач от ведущих компаний страны: Газпромбанк.Тех, VK Tech, Kaspersky, АФЛТ-Системс (Группа «Аэрофлот»), Союзмультфильм, Авито, Итэлма, ОЭЗ «Алабуга», Х5.

14 дней на разработку решений

Принять участие могут:
✔️ граждане РФ и других стран от 18 лет
✔️ специализация: Front / Back / FullStack, Web-разработчика, UX / UI дизайнеры, Product / Project-менеджеры, Data Scientists, Data Engineers, аналитики и другие специалисты
✔️ местоположение — неважно, всё проходит онлайн
Других ограничений нет!

📅 Успейте зарегистрироваться до 18 сентября!

Регистрация по ссылке 👉🏻 https://i.moscow/lct?utm_source=sp&utm_medium=social&utm_campaign=bookflow/?erid=2VtzqwZAxqH

📲 А больше новостей и подробностей — на нашем канале, подписывайтесь: https://t.iss.one/leaders_hack
Ассемблер: рассматриваем каждый байт «Hello, World!». Как на самом деле работают программы на уровне процессора и ОС

Что на самом деле происходит, когда вы запускаете программу? Мы привыкли воспринимать это как данность, но за кадром скрывается целая вселенная — от регистров процессора и системных вызовов Linux до формата ELF и модели памяти процесса. Присоединяйтесь к погружению, где мы прольём свет на каждый байт программы «Hello, World!» и поймём, каким образом ОС её выполняет.

❯ Введение: что будет в статье?
На самом деле, целью статьи является не столько просто написать «Hello, World!» на языке ассемблера, сколько разобрать вещи, которые многие воспринимают как данность, хотя имеют с ними дело каждый миг использования компьютера.

Но прежде чем перейти к написанию «Hello, World!», нужно разобрать некоторые концепции, которые помогут нам в полной мере понять происходящее за сценой. Для понимания изложенного ниже нужно хотя бы знать о существовании Linux и понимать, что делает программа «Hello, World!». Думаю, кем бы вы ни были, но раз вы на Хабре, то с этими проблем не будет :)

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

Мы разберёмся:

1️⃣Что такое регистры процессора и как их использовать;

2️⃣Как происходит процесс компиляции программ;

3️⃣Узнаем что такое системные вызовы и зачем они нужны;

4️⃣Какой формат имеют исполняемые файлы в Linux и каких типов они бывают;

5️⃣Узнаем что такое виртуальное адресное пространство процесса и что в нём хранится;

6️⃣Поймём процесс линковки (компоновки) программ;

7️⃣Сделаем собственную библиотеку и поймём разницу между статическими и динамическими библиотеками;

8️⃣Наконец, с полным пониманием происходящего напишем «Hello, World!» на языке ассемблера.

И начнём мы, как ни странно, с «Hello, World!» на языке C, но прежде проговорим основные вещи.

https://habr.com/ru/companies/timeweb/articles/940310/

👉 @Bookflow
👍4
🚀 Подборка Telegram каналов для программистов

Системное администрирование, DevOps 📌

https://t.iss.one/bash_srv Bash Советы
https://t.iss.one/win_sysadmin Системный Администратор Windows
https://t.iss.one/sysadmin_girl Девочка Сисадмин
https://t.iss.one/srv_admin_linux Админские угодья
https://t.iss.one/linux_srv Типичный Сисадмин
https://t.iss.one/devopslib Библиотека девопса | DevOps, SRE, Sysadmin
https://t.iss.one/linux_odmin Linux: Системный администратор
https://t.iss.one/devops_star DevOps Star (Звезда Девопса)
https://t.iss.one/i_linux Системный администратор
https://t.iss.one/linuxchmod Linux
https://t.iss.one/sys_adminos Системный Администратор
https://t.iss.one/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
https://t.iss.one/sysadminof Книги для админов, полезные материалы
https://t.iss.one/i_odmin Все для системного администратора
https://t.iss.one/i_odmin_book Библиотека Системного Администратора
https://t.iss.one/i_odmin_chat Чат системных администраторов
https://t.iss.one/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
https://t.iss.one/sysadminoff Новости Линукс Linux

1C разработка 📌
https://t.iss.one/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
https://t.iss.one/DevLab1C 1С:Предприятие 8
https://t.iss.one/razrab_1C 1C Разработчик
https://t.iss.one/buh1C_prog 1C Программист | Бухгалтерия и Учёт
https://t.iss.one/rabota1C_rus Вакансии для программистов 1С

Программирование C++📌
https://t.iss.one/cpp_lib Библиотека C/C++ разработчика
https://t.iss.one/cpp_knigi Книги для программистов C/C++
https://t.iss.one/cpp_geek Учим C/C++ на примерах

Программирование Python 📌
https://t.iss.one/pythonofff Python академия.
https://t.iss.one/BookPython Библиотека Python разработчика
https://t.iss.one/python_real Python подборки на русском и английском
https://t.iss.one/python_360 Книги по Python

Java разработка 📌
https://t.iss.one/BookJava Библиотека Java разработчика
https://t.iss.one/java_360 Книги по Java Rus
https://t.iss.one/java_geek Учим Java на примерах

GitHub Сообщество 📌
https://t.iss.one/Githublib Интересное из GitHub

Базы данных (Data Base) 📌
https://t.iss.one/database_info Все про базы данных

Мобильная разработка: iOS, Android 📌
https://t.iss.one/developer_mobila Мобильная разработка
https://t.iss.one/kotlin_lib Подборки полезного материала по Kotlin

Фронтенд разработка 📌
https://t.iss.one/frontend_1 Подборки для frontend разработчиков
https://t.iss.one/frontend_sovet Frontend советы, примеры и практика!
https://t.iss.one/React_lib Подборки по React js и все что с ним связано

Разработка игр 📌
https://t.iss.one/game_devv Все о разработке игр

Библиотеки 📌
https://t.iss.one/book_for_dev Книги для программистов Rus
https://t.iss.one/programmist_of Книги по программированию
https://t.iss.one/proglb Библиотека программиста
https://t.iss.one/bfbook Книги для программистов

БигДата, машинное обучение 📌
https://t.iss.one/bigdata_1 Big Data, Machine Learning

Программирование 📌
https://t.iss.one/bookflow Лекции, видеоуроки, доклады с IT конференций
https://t.iss.one/rust_lib Полезный контент по программированию на Rust
https://t.iss.one/golang_lib Библиотека Go (Golang) разработчика
https://t.iss.one/itmozg Программисты, дизайнеры, новости из мира IT
https://t.iss.one/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻
https://t.iss.one/nodejs_lib Подборки по Node js и все что с ним связано
https://t.iss.one/ruby_lib Библиотека Ruby программиста
https://t.iss.one/lifeproger Жизнь программиста. Авторский канал.

QA, тестирование 📌
https://t.iss.one/testlab_qa Библиотека тестировщика

Шутки программистов 📌
https://t.iss.one/itumor Шутки программистов

Защита, взлом, безопасность 📌
https://t.iss.one/thehaking Канал о кибербезопасности
https://t.iss.one/xakep_2 Хакер Free

Книги, статьи для дизайнеров 📌
https://t.iss.one/ux_web Статьи, книги для дизайнеров

Математика 📌
https://t.iss.one/Pomatematike Канал по математике
https://t.iss.one/phis_mat Обучающие видео, книги по Физике и Математике
https://t.iss.one/matgeoru Математика | Геометрия | Логика

Excel лайфхак📌
https://t.iss.one/Excel_lifehack

https://t.iss.one/mir_teh Мир технологий (Technology World)

Вакансии 📌
https://t.iss.one/sysadmin_rabota Системный Администратор
https://t.iss.one/progjob Вакансии в IT
5👎1🗿1
Коллекция библиотек и фреймворков для C++

Список удивительных фреймворков, библиотек, ресурсов и блестящих вещей на C++ (или C). Вдохновленный удивительными... вещами.

https://github.com/fffaraz/awesome-cpp

👉 @Bookflow
4👍1🔥1
Media is too big
VIEW IN TELEGRAM
Контракты для С++
Тимур Думлер

Контрактное программирование — эффективный подход к написанию более безопасных и корректных программ. Он был успешно реализован в таких языках программирования, как Eiffel и Ada. В стандарте С++ контрактное программирование имеет долгую и сложную историю.

С тех пор как попытка добавить контракты в стандарт C++20 потерпела неудачу, SG21 — рабочая группа для стандартизации контрактов в комитете C++ — активно разрабатывает новую версию этой фичи. Сегодня эта версия контрактов уже практически полнофункциональна и с большой вероятностью будет включена в следующий стандарт C++26.

В этом докладе мы рассмотрели текущий дизайн контрактов для C++26. Обсудили разновидности контрактов (preconditions, postconditions, assertions), возможные режимы проверки, обработку нарушений и многое другое. Рассмотрели, чем текущий дизайн превосходит существующие реализации на макросах и как помогает повысить безопасность и корректность кодовой базы.

источник

👉 @Bookflow
👍2
Карта памяти программы в Windows

Мы в MAX

👉 @Bookflow
🤮3👍2👎2💩1
Media is too big
VIEW IN TELEGRAM
🖥 Основы SQL за час - бесплатно и проще некуда

Содержание:
00:00 - подготавливаем базу
04:36 - выбираем данные SELECT
08:30 - указываем текущую базу данных
09:58 - чувствительность к регистру
12:14 - выбор определенных колонок
15:28 - фильтрация с помощью WHERE
20:59 - фильтрация с И и ИЛИ
26:38 - поиск строки по шаблону
29:18 - свой среди чужих
31:26 - NULL когда данные отсутствуют
34:27 - сортировка данных в SQL
38:37 - добавление записей с помощью SQL запроса
45:36 - обновление данных с помощью SQL
52:32 - удаляем данные из базы с помощью SQL

источник

Мы в MAX

👉 @Bookflow
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2❤‍🔥11👎1
Коллизии хэш-функций и парадокс дней рождения

Как работает хэш-функция? На вход подаются произвольные данные — слово, веб-сайт, файл или ДНК человека — а на выходе получаем 16-теричное число (hex). Очень удобно, чтобы стандартизировать различные объекты, присвоить им уникальные ID, цифровые отпечатки.

К сожалению, отпечатки иногда получаются одинаковыми — происходят коллизии.

Коллизии хэш-функций похожи на парадокс дней рождения, который недавно вызвал бурные дебаты на Хабре и на HN. Почему люди так горячо спорят? Наверное, потому что человеческая интуиция иногда не совпадает с математическими формулами. Другими словами, язык математики ≠ человеческому.

Интересно сравнить разные хэш-функции с математической точки зрения. Насколько часто встречаются «парадоксы»?

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

Мы в MAX

👉 @Bookflow
👍21👎1
Что такое Docker? В чем отличие контейнера от образа?

Docker — программное обеспечение для автоматизации развёртывания и управления приложениями в средах с поддержкой контейнеризации.

Образ — шаблон приложения, который содержит слои файловой системы в режиме "только-чтение".

Контейнер — запущенный образ приложения, который кроме нижних слоев в режиме "только чтение" содержит верхний слой в режиме "чтение-запись".

Мы в MAX

👉 @Bookflow
👍3
Парень сделал онлайн-карту парковочных штрафов Сан-Франциско. Власти отреагировали уже через 4 часа

23-летний инженер Райли Уолц создал онлайн-карту, которая в реальном времени отслеживала всех парковочных инспекторов Сан-Франциско.

И он ничего не взламывал. Оказалось, что система штрафов работала через открытый API без авторизации, а номера квитанций шли по предсказуемому, хоть и очень странному алгоритму. Райли просто первым догадался этим воспользоваться.

Карта не просто показывала копов. Она вела рейтинг «самых продуктивных»! Лидер недели, офицер №0435, выписал штрафов на $16,722 всего за два дня. У аутсайдеров в том же отделе — в пять раз меньше.

Власти отреагировали молниеносно — всего через 4 часа доступ к данным прикрыли. Официальная причина: «защита безопасности сотрудников». На самом деле: водители начали уворачиваться от штрафов, и бюджету это не понравилось.

Забавно, что у самого Райли даже нет машины. Он сделал проект после того, как штраф получил его сосед.

https://habr.com/ru/news/950110/

Мы в MAX

👉 @Bookflow
👍13🤯4😁1
💻 12 основных команд Git

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

1️⃣ git init - инициализация нового репозитория
2️⃣ git add - подготовка изменений к коммиту
3️⃣ git commit - создание коммита
4️⃣ git push - отправка изменений в удалённый репозиторий
5️⃣ git pull - получение и слияние изменений с удалённого репозитория
6️⃣ git remote - управление удалёнными репозиториями
7️⃣ git branch - работа с ветками
8️⃣ git fetch - получение данных без слияния
9️⃣ git checkout - переключение между ветками
🔟 git merge - слияние веток
1️⃣1️⃣ git status - проверка состояния репозитория
1️⃣2️⃣ git reset - откат изменений

Сохрани себе, чтобы всегда иметь под рукой!

Мы в MAX

👉 @Bookflow
👍52
MySQL vs MongoDB

Мы в MAX

👉 @Bookflow
👍5
Media is too big
VIEW IN TELEGRAM
Гайд по Git Для Начинающих За 15 Минут

Запутались в командах Git? В этом видео я объясню 9 основных команд, которые вам действительно нужны для работы. Простыми словами, без лишней теории, и с крутыми анимациями. Вы узнаете, как клонировать проекты, делать коммиты, управлять ветками и делиться изменениями с командой. Всё, что нужно, чтобы уверенно использовать Git каждый день!

Таймкоды:
00:00:00 - интро
00:00:34 - Git clone
00:01:58 - Git commit
00:05:08 - Git add
00:07:16 - Git branch
00:08:42 - Git checkout
00:09:29 - Git push
00:11:54 - Git rebase
00:13:30 - Git revert

источник

Мы в MAX

👉 @Bookflow
4👍4🔥1
В хабе на Хабр «Разработка публичных облаков» — свежие статьи
от инженеров MWS Cloud Platform ⬜️.

Ценности решают. Как пять принципов помогли вырасти с 150 до 520 человек и запустить IaaS за год.

Binapi и VPP. Программируем SR Policy на Go, разбираем грабли и показываем рабочий прототип для traffic engineering.

Control plane под замком. Зачем прятать мастера Kubernetes и какие решения мы протестировали в Managed Kubernetes.

SPDK для VM. Почему стандартного QEMU мало и как мы ускоряли диски в публичном облаке.

eBPF & Security. Новые возможности для Cilium и Falco и новые риски: атаки на maps, io_uring и rootkits.

🔗 Подпишись на облачный хаб MWS — там регулярно рассказываем, как строим новое облако с нуля.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1