
Сергей Бондаренко
Автор
Меня зовут Бондаренко Сергей. Я - IT-журналист с богатым техническим бэкграундом. Долгое время изучал компьютерную графику, автор и научный редактор книг по 3ds Max и Photoshop, был постоянным автором многих глянцевых журналов, включая CHIP, Upgrade Special, ComputerBild и др. Очень люблю новые технологии и стараюсь, по мере сил, доносить их до читателя. В последнее время активно изучаю языки программирования и инструменты для разработки.
List Comprehensions (генераторы списков) в Python
В Python присутствует синтаксическая конструкция, которая позволяет в одну строку заполнять списки простыми или сложными значениями. Называется она — генераторы списков или List Comprehensions. Сейчас мы поговорим об операциях с ними и расскажем о том, как их использовать в своих задачах.
HashSet в C#: критически важные вещи для понимания
Сегодня мы поговорим о такой вещи как HashSet в C# — расскажем о том, где она используется, для чего нужна и в чем ее особенности. И в качестве первой такой особенности сразу отметим, что структура данных HashSet (и вообще set) — это довольно редкая структура, которая присутствует не во всех стандартных библиотеках .NET, тем не менее она весьма полезна и практична. И вот почему.
Большой обзор: HTTP/3, QUIC, SPDY и все-все-все
Сегодня речь пойдет о HTTP/3 — новом сетевом стандарте, который заметно оживил интернет. Так ли он быстр, как о нем говорят, и в чем его главные отличия от устоявшихся стандартов — попробуем разобраться в этой статье.
Нулевые указатели (null и nullptr) в C++. Учимся ходить по граблям изящно
В этом материале для новичков мы рассуждаем про обнаружение в коде C++ распространенного дефекта «разыменование нулевого указателя», попутно объясняя его скрытую коварность.
Vue и Vuex: делаем пользовательские интерфейсы быстро
Vue.js — это популярный JavaScript-фреймворк, инструмент для быстрой разработки реактивных пользовательских веб-интерфейсов. Данный инструмент включает в себя набор функций, библиотек и различных подходов, упрощающих процесс веб-разработки. Он подходит как для созданий сложных одностраничных приложений (SPA, Single-Page Applications), так и для решений задач уровня представления (view).
Дизайн операционной системы: минимальные сведения об устройстве
Как устроены современные операционные системы? Почему Linux и UNIX прослыли стабильными, а MS-DOS работала медленно? Почему часто падает Windows, и какая идея лежит в дизайне гибридной macOS? Как в целом ОС работают с памятью и управляют процессами? О некоторых особенностях устройства современных ОС и их реализации — читайте в нашем новом материале.
Базы данных: что это такое, и какие они бывают
База данных (БД) — это стандартный программный сервис для упорядоченного хранения данных. Повсеместно используется в том числе в клиент-серверной архитектуре. Например, вы заполняете свой профиль или делаете заказ в интернет-магазине, а система сохраняет ваши данные в базе, чтобы воспользоваться ими впоследствии (то есть БД не только сохраняет-оперирует данными, но и хранит их). В этой статье мы подробно поговорим про историю БД, принципы устройства и применение.
CSS Flexbox: легкий старт для новичков
CSS Flexible Box Layout Module (CSS модуль для макетов с гибкими блоками), проще говоря Flexbox («флексбокс») — это технология, упрощающая верстку отдельных элементов HTML-страницы. Этот модуль предоставляет возможность при помощи CSS3 быстро и удобно позиционировать блоки на странице, подстраиваясь под разные варианты разрешения экрана. В этой статье мы узнаем, как быстро и легко верстать современные веб-страницы на основе этой техники.
Основы Make и Makefile, а также примеры их использования
Как известно, программный код — всего лишь программно-командный синтаксис, который нельзя запустить как приложение или использовать как библиотеку. Любой исходный файл следует сначала скомпилировать в исполняемый файл, а также библиотеку — в динамическую или статическую. На больших современных проектах процесс сборки может быть сложным и многоступенчатым, что требует инструмента для автоматизации данного процесса.
BGP: базовый протокол интернета
Сегодня речь пойдет о BGP — главной «шестеренке» в огромном сетевом механизме интернета. Border Gateway Protocol — это протокол граничного шлюза, разработанный для синхронизации сведений о маршрутизации и данных о связности между автономными системами (о том, что это такое, расскажем чуть ниже) в сети. Иными словами, BGP — это способ маршрутизации, благодаря которому возможно функционирование интернета. Напомним, что протоколы маршрутизации нужны для того, чтобы устройства-роутеры могли в автоматическом режиме, без участия администратора сети, составить карту сети и таблицу маршрутизации.
Предназначение Traceroute и Tracert: кратко и понятно
Сегодня мы расскажем об известной служебной утилите, незаменимом инструменте системного администратора. Обычно это приложение служит для определения маршрута следования пакетов данных в сетях TCP/IP. Также эту утилиту используют для определения связности между сетями или для оценки скорости соединения в сети.
Wget — загрузка по требованию
Загрузка данных по сети — операция тривиальная и часто востребованная. Если вы работаете под Windows, то наверняка используете «качалку» вроде Download Master или GetRight. Но для платформы Linux выбор невелик. Да и требования к качалке должны быть несколько иные, например, она должна поддерживать командную строку. К счастью, практически во все дистрибутивы GNU/Linux включена утилита, которая называется Wget. В этой статье мы рассмотрим возможности этого приложения и расскажем о том, как с ним работать.
Методы сортировки и их реализация в Python
Когда имеешь дело с данными, постоянно приходится сортировать их по какому-либо критерию. Иногда это сделать довольно просто, например, когда нужно отсортировать список фамилий по алфавиту, но иногда эта задача не представляется тривиальной. Например, когда имеешь дело с Big Data. В этом случае имеет значение не только сам факт сортировки, но и метод, который был избран для данной цели. Правильно выбранный алгоритм может значительно быстрее справляться с заданием. Давайте посмотрим, какие основные способы сортировки существуют и как они реализуются в программном коде Python.
Что такое API Gateway: введение
В современном интернете большая часть сетевого взаимодействия приходится на интерфейсы прикладного программирования — API. Рост популярности и усложнения этих интерфейсов в свою очередь приводит к новым вызовам, для разрешения которых нужен новый тип инфраструктуры. И сегодня речь пойдет о API Gateway — мы простым языком расскажем о том, что это такое, для чего нужно и как устроено.
Диаграммы Ганта и инструменты для работы с ними
Большинство менеджеров проектов, особенно в разработке ПО, знают о диаграммах Ганта (Gantt Charts). Они помогают повысить производительность и эффективность рабочих процессов и обеспечить своевременное выполнение задач. Такие графики могут быть применены как к небольшим проектам, так и к самым сложным. В чем инновационная суть этих графиков и с помощью каких инструментов их удобно создавать?
IP-адресация, маски и подсети: просто о сложном
Сегодня мы расскажем о том, как работает сеть на уровне протоколов, и поговорим об IP-адресах. Вы узнаете, как работает TCP/IP-протокол, зачем нужны маски подсети и как ее правильно определить.
Что такое большие данные: коротко о главном
Вы никогда не задумывались над тем, как много новой информации появляется ежедневно в интернете? Простейшие события, скажем, открыли страничку Facebook или просто проверили поступившую почту на ящик Gmail — ведут к увеличению объема данных. Это огромное количество информации, которая где-то записывается, растет и растет.
Утилита Sed Linux: назначение и примеры использования
Название Sed произошло от английского сокращения — Stream EDitor, потоковый текстовый редактор для Unix-среды. Sed не похож на привычный инструмент для работы с текстом, поскольку не является интерактивным редактором в привычном понимании. По своей «странности» он чем-то похож на знаменитый Vim. Принцип работы Sed заключается в непрерывной обработке входящего потока данных, например, в составе программного канала. Напомним, что программный канал или pipe — способ передачи вывода одной команды на вход другой.
Telegram API: наглядный разбор с примерами
Для любого бизнеса важно установить канал общения с клиентами. Но сделать это не так просто. Психология людей такова, что они не хотят захламлять память своего смартфона новым фирменным приложением из того места, которое они посетили. Совсем другое дело — чат-бот. Ненавязчивый и дружелюбный. А кроме того — со всеми необходимыми фишками: рекламными акциями, скидками и быстрым заказом. И уведомления в одном единственном удобном мессенджере. Почему бы его не реализовать в своем бизнесе? Тем более, что это не так сложно, как вы думаете.
C# Random: заготовленные случайности
Определенные типы задач, которые решает разработчик, требуют от него использования случайных величин. Предположим, нужно имитировать случайное выпадение какой-то грани игрального кубика или бросить жребий, выбрав вариант «орел» или «решка». В C# есть возможность «подбросить монетку» и взять псевдослучайные числовые значения. Они генерируются классом Random. Вот о нем и предлагаем поговорить более подробно.
Регулярные выражения в C# (C# regex)
Регулярные выражения (C# regex) — это шаблоны поиска строк. Они применяются для всевозможных операций, связанных с манипулированием текста, например, поиском подстрок и их заменой.
REST API: минимум, который нужно знать новичку
Сегодня мы поговорим про фундаментальный элемент архитектуры любого современного приложения — про интерфейс приложения или API. Большую часть этой статьи мы посвятим разбору основ популярных реализаций API — REST API и SOAP API. Такие интерфейсы часто называют api restful, они применяются в том или ином виде практически в любом современном веб-приложении, написанном на любом языке программирования.
Оператор yield в C#: назначение и примеры использования
Сегодня речь пойдет про важный оператор языка C# — yield. Мы также рассмотрим тесно связанные с ним понятия контейнера, генератора и итератора. В материале много примеров кода, в частности подробно рассмотрено применение yield break и yield return.
Как работать со строками в C#: базовые операции
Сегодня речь пойдет о строках в языке C#. Мы рассмотрим основные операции со строчками, например, разбиения и склейку строк (c# string split). К концу материала вы уверенно овладеете всеми базовыми инструментами обработки строк в C#.
Модуль datetime в Python: как работать с датой и временем
Информация о дате в Python — это не отдельный тип данных. Поэтому для выполнения операций с датой и временем используется модуль datetime. Вначале нужно его импортировать — это даст возможность работать с датами как с объектами отдельного типа.
Установка и настройка Ansible: пошаговая инструкция
Ansible — это система управления конфигурациями с сервера. Мы можем развертывать и конфигурировать приложения, управляя ими с Ansible-сервера.
Как создавать кнопки в Bootstrap: гайд по настройке цветов и размеров
Bootstrap — это фреймворк, набор инструментов для разработки сайтов, включая HTML- и CSS-шаблоны. В этой статье мы расскажем, как создавать всевозможные кнопки. Начнем!
Зачем нужен кортеж в Python и как с ним работать
Помимо списков в Python есть возможность работать с кортежами. Кортеж — это структура данных, похожая на список. Подобно спискам, кортежи могут хранить некоторый упорядоченный набор элементов.
Как создать и настроить проект на ASP.NET: пошаговая инструкция
ASP.NET — это платформа для разработки веб-приложений, созданная Microsoft. Но давайте начнем с самого начала. В 2002 году компания задалась целью создать общеязыковую среду исполнения, которая бы работала с общими типами и удовлетворяла общеязыковой спецификации, обеспечив взаимодействие разных языков программирования.
Элемент случайности: как использовать модуль random в Python
Модуль random в Python дает возможность генерировать случайные числа и выбирать случайные элементы из списка. Но давайте обо всем по порядку.
Сообщить об опечатке
Текст, который будет отправлен нашим редакторам: