Как стать автором
Обновить
Сначала показывать

Камень, ножницы, бумага: путешествие во времени, стратегия и код

Время на прочтение7 мин
Количество просмотров1.4K
image


«Камень, ножницы, бумага» — простая, но очень популярная жестовая игра, которой вот уже не первый век развлекаются люди во всём мире. Поскольку правила игры просты, а жесты общепонятны, ею широко пользуются для улаживания споров, принятия решений или просто чтобы провести время. В этой статье мы исследуем богатую историю игры «Камень, ножницы, бумага», поговорим о том, как в неё играть, напишем саму игру и разберём структуру её кода, а также узнаем, как на материале этой игры можно прокачать навыки программирования.
Читать дальше →
Всего голосов 3: ↑3 и ↓0+5
Комментарии1

Книга: «Поговорим на Python. Разработка ПО для начинающих»

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров7.2K
image Привет, Хаброжители!

Поговорим на Python?

Точнее о книге, которая будет понятна новичку любого возраста, желающему разобраться с Python. Подходит для самостоятельного изучения.

Программирование — это приключение, полное трудностей, нового опыта, побед и поражений. В книге “Поговорим на Python” вы присоединитесь к Эрику и Саймону, которые учатся программировать на Python и создают свое первое приложение. Книга написана специально для будущих программистов и идеальна, чтобы начать осваивать навык, который останется на всю жизнь!

Книга “Поговорим на Python” учит писать код, задавать вопросы, делать ошибки и пробовать разные решения — прямо как в жизни. Вы шаг за шагом будете создавать приложение для небольшой кофейни, начиная с онлайн-меню и заканчивая хранением заказов в базе данных. Уникальные практические задания приведут вас туда, куда не добираются другие книги для начинающих.
Читать отрывок.
Читать дальше →
Всего голосов 11: ↑10 и ↓1+14
Комментарии3

Книга: «Рецепты PHP. Для профессиональных разработчиков»

Время на прочтение12 мин
Количество просмотров7K
image Привет, Хаброжители!

Важнейшая книга на кухне разработчиков на PHP!
В ней нет ни слова о том, как разделывать фазана, зачем солить воду и сколько в минутах будет «до готовности». Лишь практическое руководство, как использовать современную версию PHP для задач, встречающихся в современной практике программистов.

В этом сборнике рецептов разработчики на PHP найдут надежные и проверенные решения распространенных задач. PHP — удивительно простой язык программирования, что объясняет, почему на нем написано более 75% веб-сайтов в Интернете. Но он также невероятно терпим к ошибкам программирования, что может привести к тиражированию сомнительного кода.
Читать дальше →
Всего голосов 10: ↑7 и ↓3+10
Комментарии11

Такому в школе не научат! Компьютерная литература для будущих программистов

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров6K
Международный день знаний уже прошёл, но учиться никогда не рано!

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

image

Читать дальше →
Всего голосов 10: ↑5 и ↓5+3
Комментарии5

Как оптимизировать размер контейнерного образа в Docker

Время на прочтение6 мин
Количество просмотров6.4K

Введение


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

Я для сравнения покажу различные варианты Dockerfile, а в конце этой статьи приведу таблицу, в которой будет показано, образы какого размера получаются из каждого файла. Так вам будет проще оценить, каково влияние от каждого варианта оптимизации.
Читать дальше →
Всего голосов 11: ↑9 и ↓2+11
Комментарии6

Книга: «Грокаем конкурентность»

Время на прочтение9 мин
Количество просмотров8.7K
image
В продолжение серии «Грокаем» — очередная новинка. В этот раз грокать мы собираемся конкурентность!

Представьте себе мир, в котором за развитием технологии угнаться сложнее, чем за гепардом, накачанным стимуляторами, а спрос на эффективное конкурентное программирование неудержимо растет. В этом мире разработчики сталкиваются с серьезной задачей: как создавать системы, которые способны справиться с колоссальными объемами данных и обрабатывать их достаточно проворно, чтобы удовлетворить неутолимые потребности пользователей? В этом мире конкурентность не только пленила умы, но и стала головоломкой, которую приходится разгадывать. И самое поразительное — в этом мире мы живем сегодня.
Читать отрывок.
Читать дальше →
Всего голосов 8: ↑8 и ↓0+12
Комментарии23

Как написать собственный графический клиент для ChatGPT при помощи NextJS и Wing

Время на прочтение10 мин
Количество просмотров1K
image


В этой статье рассказано, как написать и развернуть клиент для ChatGPT при помощи Wing и Next.js.

Рассмотренное здесь приложение может работать локально (в локальном симуляторе облака), либо его можно развернуть в облаке у вашего провайдера.
Читать дальше →
Всего голосов 3: ↑3 и ↓0+7
Комментарии0

Серия книг “Грокаем” от издательства “Питер”

Время на прочтение6 мин
Количество просмотров13K
Привет, Хаброжители!

Мы решили рассказать о всей серии “Грокаем”.
А заодно подарить скидку!

Чем хороши “Грокаем”? Каждая книга яркая и оставляющая след. Важная особенность книг этой серии в том, что сложные вещи, описанные в тексте, дополняются интересными нестандартными иллюстрациями, из-за чего тема проще понимается и запоминается.
Это книги, которые приятно читать и смотреть.

Читать дальше →
Всего голосов 12: ↑11 и ↓1+14
Комментарии9

Книга: «Алгоритмы? Аха!»

Время на прочтение6 мин
Количество просмотров11K
image Привет, Хаброжители!

Зачем читать скучные описания алгоритмов и продираться через нагромождение формул? Практические примеры и забавные объяснения позволят моментально разобраться с самыми сложными задачами, а юмор и прекрасные иллюстрации не дадут вам «заснуть» над книгой. Вы словно читаете короткие истории или пытаетесь справиться с головоломкой, постигая при этом суть алгоритмов и ощущая их красоту.

В число алгоритмов, рассмотренных в книге, вошли различные методы сортировки, перебор, поиск в глубину и ширину, обход графов, четыре алгоритма поиска кратчайшего пути, два алгоритма минимального остовного дерева, алгоритмы определения вершин и ребер разреза, а также поиск наибольшего паросочетания в двудольных графах и многое другое.
Читать дальше →
Всего голосов 7: ↑6 и ↓1+7
Комментарии10

Книга: «Алгоритмы и структуры данных на Python»

Время на прочтение21 мин
Количество просмотров12K
image Привет, Хаброжители!

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

Кем бы вы ни были — начинающим программистом, опытным разработчиком, желающим расширить знания, или специалистом с нетехническим образованием, интересующимся анализом данных, — книга поможет улучшить понимание и навыки решения задач.
Читать дальше →
Всего голосов 10: ↑9 и ↓1+13
Комментарии0

Книга: «PowerShell: практическая автоматизация»

Время на прочтение20 мин
Количество просмотров20K
image Привет, Хаброжители!

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

Вы узнаете, как создавать скрипты PowerShell для автоматизации локальных и облачных систем. Найдете советы по определению задач, которые стоит автоматизировать, по организации структуры скриптов и управлению ими, а также множество примеров кода с подробными пояснениями. Научитесь адаптировать уже готовые скрипты к новым условиям применения и упрощать работу специалистов не-технического профиля при помощи простых и понятных интерфейсов SharePoint.
Читать дальше →
Всего голосов 7: ↑7 и ↓0+9
Комментарии7

Как улучшить время сборки в iOS с помощью модуляризации

Время на прочтение9 мин
Количество просмотров833
image


Большинство команд мобило понимают и ценят преимущества быстрой сборки. Возможность быстро компилировать и тестировать код означает ускорение разработки и итераций, что, в свою очередь, позволяет команде осуществлять доставку новых версий более регулярно и эффективно. Но на самом деле бывает сложно добиться стабильно быстрой сборки и внедрить долгосрочное решение, позволяющее поддерживать высокую скорость сборки по мере роста кодовой базы. Существует множество различных тактик, и если некоторые из них относительно тривиальны — например, уменьшение размера доставляемых ресурсов, — то другие могут быть гораздо более сложными и даже опасными (вспомните сомнительные трюки с компилятором)!
Читать дальше →
Всего голосов 4: ↑4 и ↓0+8
Комментарии0

Книга: «Программирование на Python с помощью GitHub Copilot и ChatGPT.»

Время на прочтение34 мин
Количество просмотров23K
image Привет, Хаброжители!

В наши дни люди пишут компьютерные программы совсем не так, как раньше. Используя GitHub Copilot, можно простым языком описать, что должна делать программа, а искусственный интеллект тут же сгенерирует ее.

Узнайте, как создавать и улучшать программы на Python с помощью ИИ, даже если прежде вы не написали ни строчки компьютерного кода. Сэкономьте время на рутинном программировании и воспользуйтесь услугами ИИ, способного мгновенно воплотить ваши идеи в жизнь. Заодно выучите Python!
Читать дальше →
Всего голосов 13: ↑12 и ↓1+17
Комментарии11

Книга: «Безопасные и надежные системы: Лучшие практики проектирования, внедрения и обслуживания как в Google»

Время на прочтение29 мин
Количество просмотров1.8K
image Привет, Хаброжители!

Может ли быть надежной небезопасная система? Можно ли считать безопасной ненадежную систему? Безопасность имеет решающее значение для разработки и эксплуатации масштабируемых систем в реальных условиях, поскольку вносит важный вклад в качество, производительность и доступность продукта. В этой книге эксперты Google делятся передовым опытом, позволяющим разрабатывать масштабируемые и надежные системы, которые действительно будут безопасны.

Вам уже знакомы два бестселлера, написанные разработчиками из Google — «Site Reliability Engineering. Надежность и безотказность как в Google» и «Site Reliability Workbook: практическое применение», значит, вы понимаете, что только неуклонное следование жизненному циклу обслуживания позволяет успешно создавать, развертывать и поддерживать программные системы. Сейчас же мы предлагаем взглянуть на проектирование, реализацию и обслуживание систем с точки зрения практиков, специализирующихся на безопасности и надежности.
Читать дальше →
Всего голосов 6: ↑6 и ↓0+11
Комментарии0

Программируем микроконтроллер STM32 на Rust

Время на прочтение8 мин
Количество просмотров8.6K
Rust — отличный язык, но насколько он подходит для разработки встраиваемых систем? В этом посте будет подробно рассказано, как обустроить инструментарий для такой разработки. Кроме того, мы рассмотрим один удивительный аспект Rust, проявляющийся при разработке встраиваемых систем. Изучив этот пост, вы сможете приступать к собственным проектам в данной области.

image
Читать дальше →
Всего голосов 10: ↑9 и ↓1+15
Комментарии10

Издательство Питер. Колонка редактора, август 24 г

Время на прочтение4 мин
Количество просмотров2.3K
image

Привет, Хаброжители!

Предлагаем ознакомиться с краткими обзорами новинок, отправленных в типографию.
Читать дальше →
Всего голосов 6: ↑6 и ↓0+12
Комментарии2

Как устроены условные точки останова

Время на прочтение9 мин
Количество просмотров3.1K
Условные точки останова (conditional breakpoints) – исключительно полезный инструмент. Но всем известно, насколько они замедляют работу кода, так, что из-за этого некоторые даже бросают ими пользоваться. В Visual Studio в своё время удалось значительно улучшить ситуацию с ними, что не помешало пользователю @ryanjfleury высмеивать их крайнюю медлительность. Но даже у raddbg уходит около 2 секунд на выполнение 10000 итераций простого цикла, если внутри него расставлены точки останова. Для сравнения: без точек останова тот же самый цикл выполняется менее чем за 1 мс. Почему же так чертовски медленно?

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

Обратите внимание: в этой статье речь идёт об отладчиках, работающих с нативным кодом – например, GDB, LLDB, Visual Studio C++. Отладчики для управляемых и скриптовых языков работают примерно так же, но могут отличаться детали реализации.
Читать дальше →
Всего голосов 5: ↑5 и ↓0+10
Комментарии10

Книга: «Data mesh в действии»

Время на прочтение17 мин
Количество просмотров3.9K
image Привет, Хаброжители!

Потребность эффективно хранить большие объемы данных и обращаться к ним стала одной из ключевых потребностей любого бизнеса. Сетка данных (data mesh) — это новый способ децентрализовать управление данными, радикально повышая их безопасность и доступность. Хорошо спроектированная сетка данных позволяет потреблять данные в режиме самообслуживания и помогает избавляться от узких мест, которые свойственны монолитным архитектурам данных.

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

Книга предназначена для профессионалов в области данных и не привязана к конкретным программным стекам или платформам данных.
Читать дальше →
Всего голосов 7: ↑5 и ↓2+9
Комментарии0

Создание масштабируемых приложений при помощи Kafka и реактивного программирования

Время на прочтение12 мин
Количество просмотров9.8K
image


Введение


В современном цифровом мире критически важна возможность обрабатывать данные в режиме реального времени и масштабировать приложения. Для этого хорошо подходит Kafka – платформа для распределённой потоковой обработки событий, особенно, если сочетать её с реактивным программированием. В данной статье будет рассказано, как создавать реактивные приложения при помощи этого инструментария.
Читать дальше →
Всего голосов 12: ↑11 и ↓1+15
Комментарии5

Как разработать онлайновый компилятор кода при помощи Java и Docker

Время на прочтение12 мин
Количество просмотров3.4K
image


Вы когда-нибудь задумывались, как устроены такие платформы как Codeforces и LeetCode? Как именно они компилируют и выполняют код, поступающий от множества пользователей и проверяют его в тестовых кейсах? Как определяют эффективность алгоритмов?
В этой статье мы подробно разберём, как выстроить высокоэффективную платформу для решения задач.

Исходный код к этой статье выложен на Github в этом репозитории
Читать дальше →
Всего голосов 3: ↑3 и ↓0+7
Комментарии1

Информация

Сайт
piter.com
Дата регистрации
Дата основания
Численность
201–500 человек
Местоположение
Россия