Как стать автором
Поиск
Написать публикацию
Обновить
441
141

Пользователь

Отправить сообщение

Книга: «Технический директор. Эффективное техническое лидерство»

Время на прочтение2 мин
Количество просмотров381

Привет, Хаброжители! Технический директор сталкивается с особыми вызовами в одиночку. Многие, с энтузиазмом начав свою первую роль на этом уровне, покидают ее разочарованными, столкнувшись со сложностью задач и необходимостью осваивать новые навыки.

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

Читать далее

Паттерны проектирования в Python, о которых следует забыть. Часть вторая

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

С тех пор, как «банда четырёх» ещё в 90-е выпустила свою легендарную книгу «Паттерны объектно-ориентированного проектирования», сами «паттерны проектирования» стали краеугольным камнем всевозможных рассуждений о программной архитектуре. Однако, со временем этот термин становится всё более размытым. Сегодня при упоминании паттернов может иметься в виду:

Назначение этого паттерна: та проблема, для решения которой он предназначен Реализация: точная структура класса или код для воплощения этого паттерна

Рассказывая о «паттернах проектирования в Python, о которых следует забыть», мы имеем в виду как раз реализации. В самом деле, эти паттерны решают реальные задачи. Но в Python решение этих задач ничуть не напоминает те варианты, которые предлагаются на C++ или Java.

Держа в уме эту идею, делаем простой вывод:

Мишка учится лазать по деревьям, чтобы добраться до мёда. Но орлы никуда не лазают, они летают.

Читать далее

Книга: «Алгоритмы и структуры данных для тех, кто ненавидит читать лонгриды»

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

Привет, Хаброжители! Алгоритмы — это сердце программирования. От их правильного выбора зависит, будет ли программа работать мгновенно или заставит вас ждать вечность. Но как разобраться во всем этом, если вы только в начале пути?

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

Читать далее

Обзор книги «Паттерны разработки на Python TDD, DDD и событийно-ориентированная архитектура»

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

Недавно я прочёл книгу «Паттерны разработки на Python TDD, DDD и событийно-ориентированная архитектура». Основной акцент в ней сделан на том, как именно нужно структурировать программы, чтобы они по мере роста оставались простыми и удобными в поддержке. Это моя любимая тема из области программирования, поэтому, конечно же, книга мне понравилась. Пожалуй, я не возьмусь использовать именно те приёмы, которые авторы рекомендуют в книге — но они обсуждают классные идеи, напомнившие мне о задачах, встречавшихся в моей практике на предыдущих работах. Кроме того, отмечу, что английская версия книги есть в свободном доступе онлайн, так какие вообще вопросы?

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

Читать далее

Книга: «Мощный Python: паттерны и стратегии современного программирования»

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

Привет, Хаброжители! Как стать экспертом в создании сложных и мощных приложений на Python, не тратя времени на повторение уже известных основ или перечисление ненужных функций? Аарон Максвелл фокусируется на первопринципах Python, которые действуют подобно катализаторам для всего остального: достаточно получить 5 % знаний в области программирования, чтобы остальные 95 % подтянулись автоматически.

Читать далее

Книга: «.NET 8: инструменты и навыки. Лучшие практики и паттерны проектирования, отладки и тестирования»

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

Привет, Хаброжители! Хотим рассказать вам о новой книги Марка Прайса! В ней вы узнаете, как управлять исходным кодом и проектами с помощью Git, обеспечивая при этом контроль версий. Откроете для себя передовые методы отладки и стратегии выявления и устранения проблем, а также увидите, как правильно документировать код, API и сервисы, чтобы повысить удобство обслуживания проекта.

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

Вы сможете расширить свои навыки, познакомившись с такими продвинутыми темами, как создание интеллектуальных приложений с поддержкой пользовательских чат-сервисов на основе LLM, внедрение зависимостей, оптимизация производительности с помощью тестирования и запуск сервисов в контейнерах Docker.

В книге описаны возможности разработки облачных сервисов с применением .NET Aspire и преимущества современных облачных платформ. А знакомство с особенностями передовых архитектур программного обеспечения позволит вам создавать надежные и масштабируемые приложения, удобные в обслуживании.

Читать далее

Паттерны проектирования в Python, о которых следует забыть

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

Попробуйте поискать в Интернете «Паттерны проектирования на Python» — и получите целую простыню туториалов, демонстрирующих, как в точности воспроизвести на Python паттерны проектирования из книги «Банды четырёх». Там же будут диаграммы классов, иерархии фабрик и столько шаблонного кода, что выхлопа хватит, чтобы отопить маленькую деревню. Так вам внушают, будто вы пишете «серьёзный» код. Умно. Профессионал ьно. Готово для корпоративного использования.

Но вот в чём проблема: большинство из этих паттернов решают проблемы, которые в Python просто отсутствуют. Паттерны разрабатывались для таких языков как Java и C++, где для выполнения самых базовых вещей требуется настоящая эквилибристика — нет ни функций первого класса, ни динамической типизации, ни модулей в качестве пространств имён. Разумеется, вам потребуется Фабрика или Синглтон, если без них в вашем языке просто не с чем работать.

Слепо копировать эти паттерны в Python — не признак большого ума. Из-за них ваш код сложнее читать, тестировать, а также объяснять очередному бедняге, которому этот код придётся поддерживать. Возможно, через три месяца этим беднягой станете вы..

Читать далее

Книга: «Портфолио продуктового дизайнера. Final Final»

Время на прочтение2 мин
Количество просмотров395

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

Читать далее

О ценности абстракций

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

Моя повседневная работа с основном связана с языком Elm. Благодаря сочетанию функционального языка и архитектуры Elm, многие архитектурные решения в нём получаются практически незаметными (подробнее об этом я рассказываю в этом посте у меня в блоге). Вы получаете четкое разделение задач, а язык по умолчанию подталкивает вас к хорошему проектированию.

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

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

Читать далее

Книга: «Создаем игры и изучаем C++»

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

Привет, Хаброжители! Мечтаете создавать игры, но не знаете, с чего начать? Книга «Создаем игры и изучаем C++» станет вашим проводником в мире игровой разработки!

Это издание было адаптировано под Visual Studio 2022, C++20 и библиотеку SFML, оно предлагает уникальный подход: вы не только освоите язык C++ с нуля, но и примените знания на практике, создав четыре игры в разных жанрах.

Вы начнете с изучения основ программирования, познакомитесь с ключевыми темами C++: объектно-ориентированное программирование (ООП), указатели и стандартная библиотека шаблонов (STL). Разберетесь с методами обнаружения коллизий и столкновений в игровой физике на примере игры Pong. Создавая игры, вы познакомитесь с массивами вершин, направленным звуком, шейдерами OpenGL, порождением объектов и многим другим. Вы погрузитесь в игровую механику и реализуете обработку ввода, повышение уровня персонажа и даже «вражеский» ИИ. Наконец, вы изучите паттерны проектирования игр, чтобы усовершенствовать навыки программирования на C++.

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

Читать далее

Профессиональная обработка ошибок в TypeScript

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

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

Ожидаемые ошибки, связанные с бизнес-логикой — это «нормальная» часть эксплуатации системы. О таких ошибках в системе должно быть заранее известно пользователям, а вы должны быть способны эти ошибки исправлять, если они возникнут.

Пример ожидаемой ошибки, обусловленной бизнес-логикой — попытка получить объект из хранилища больших неструктурированных данных (blob storage) с последующей необходимостью обработать случай «объект не найден». Другой пример связан с регистрацией пользователя, когда клиент пытается взять себе логин, который уже занят. В принципе, это ожидаемая ситуация и, если она произойдёт, мы вернем пользователю качественное сообщение об ошибке.

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

Читать далее

Книга: «Изучаем скриптинг PowerShell за месяц, занимаясь один час в день. 2-е изд»

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

Привет, Хаброжители! Скрипты PowerShell можно писать для автоматизации практически любых административных задач в Windows, Linux и macOS. Эта книга покажет вам как! Всего за 27 коротких уроков, каждый из которых можно выполнить менее чем за час, вы научитесь создавать, тестировать и публиковать скрипты и инструменты, которые помогут сэкономить часы рабочего времени. «Изучаем скриптинг PowerShell за месяц» — практическое руководство по автоматизации PowerShell и созданию инструментов. Этот тщательно переработанный бестселлер, обновленный до последней версии PowerShell, научит вас писать эффективные скрипты, находить и устранять ошибки и организовывать свои инструменты в библиотеки.

Читать далее

Книга: «Разработка фронтенд-приложений»

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

Привет, Хаброжители! Наверняка вы неоднократно сталкивались с ситуацией, когда начинали разработку фронтенд‑приложения на React и вроде всё было очевидно, но через некоторое время чувствовали, что уже запутались, где какой компонент. И в такой ситуации приходится вновь и вновь смотреть код, чтобы вспомнить, где в иерархии находится определенный компонент. Или, например, начинаете создавать компонент и задумываетесь на время: — «А с чего начать и какой должна быть реализация?», а реализовав компонент понимаете, что можно было бы сделать это по‑другому.

Книга «Разработка фронтенд‑приложений» предлагает решения, для подобных ситуаций, а также даст руководство по‑другому подойти к разработке. Совершенно по‑новому!

Читать далее

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

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

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

Предлагаем ознакомиться с краткими обзорами новинок, отправленных в типографию.

Читать далее

Книга: «Изучаем Kali Linux»

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

Привет, Хаброжители! Дистрибутив Kali Linux, включающий сотни встроенных
утилит, позволяет быстро приступить к тестированию безопасности. Однако наличие такого количества инструментов в арсенале Kali Linux может ошеломить. Во втором издании описываются обновленные возможности утилит и подробно рассматриваются цифровая криминалистика и реверс-инжиниринг.

Автор не ограничивается рамками тестирования безопасности и дополнительно рассказывает о криминалистическом анализе, в том числе анализе дисков и памяти, а также базовом анализе вредоносных программ.

Читать далее

Книга: «Грокаем безопасность веб-приложений»

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

Привет, Хаброжители! Безопасность приложений — приоритетная задача для веб-разработчиков. Вы работаете над интерфейсом фронтенд-фреймворка? Разрабатываете серверную часть? В любом случае вам придется разбираться с угрозами и уязвимостями и понимать, как закрыть, дырки через которые хотят пролезть черные хакеры.

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

Читать далее

Книга: «ChatGPT сделай мне сайт»

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

Привет, Хаброжители! Создавайте потрясающие сайты без знания HTML, CSS и JavaScript! Просто опишите ChatGPT, каким вы хотите видеть свой сайт, — а всю техническую работу он сделает за вас. В этой книге вы шаг за шагом научитесь создавать веб-страницы, добавлять удобные формы, интерактивные элементы и графику, используя только ИИ и свое воображение.

«ChatGPT, сделай мне сайт» — практическое руководство, с которым вы освоите создание сайтов на ИИ, даже если никогда не занимались вебразработкой. Вы начнете с основ работы с ChatGPT и уже к концу второй главы сверстаете свой первый сайт. Затем автор покажет, как наполнять страницы текстами, изображениями и формами для сбора данных, а также как редактировать HTML и CSS, чтобы придать сайту индивидуальность. Освоив эти навыки, вы сможете легко создавать фотогалереи, портфолио, каталоги и другие веб-проекты с помощью ИИ.

Читать далее

Невидимые загрузки или о пользе свободно стоящих функций

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

Довольно долго я тягался с по-настоящему глупой проблемой на C++: мне не нравятся функции-члены, но я вынужден их писать, чтобы программисту было хоть немного удобнее работать. Функции-члены обеспечивают две вещи: разграничение областей видимости и обнаружимость. Разграничение областей видимости — менее актуальная из этих задач, поскольку в моём коде на C++ я и так не использую модификаторы private/public. Обнаружимость — большая проблема: я могу написать x.F, а IDE предложит x.Func(). Отлично! «Но правильные программисты пользуются только vim и скромными IDE». Что ж, привет вам, воображаемые мифические обычные программеры. Здесь вам ничего не угрожает, но, пожалуйста, уходя — надевайте сразу два беджика:  «vim отстой» и «Я ненавижу emacs». Отлично помогает завязать разговор с «настоящими» программистами.

Читать далее

Книга: «.NET 8: приложения и сервисы. Практика создания проектов с использованием Blazor, .NET MAUI, gRPC, GraphQL.»

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

Привет, Хаброжители! У нас есть для вас новое издание книги «.NET 8: приложения и сервисы» вы сможете поднять свои навыки владения C# и .NET на новый уровень.

В книге описаны практические приемы использования различных технологий, включая Web API, gRPC, GraphQL и SignalR, что выделяет ее среди других источников. Она познакомит вас с новой унифицированной моделью Blazor Full Stack и расскажет, как использовать .NET MAUI для разработки мобильных и десктопных приложений.

В новом издании представлены последние достижения, включая бесшовную реализацию веб-сервисов со встроенной поддержкой Ahead-of-Time (AOT) ADO. NET SqlClient. Помимо других популярных библиотек, в книге рассматриваются Humanizer и Noda Time. Совершенно новая глава расскажет об архитектуре, кэшировании, организации очередей и приемах построения надежных фоновых сервисов.

Читать далее

Книга: «RAG и генеративный ИИ. Создаем собственные RAG-пайплайны с помощью LlamaIndex, Deep Lake и Pinecon»

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

Привет, Хаброжители! Мы представляем вам новую книгу Дэниса Ротмана — «RAG и генеративный ИИ. Создаем собственные RAG-пайплайны с помощью LlamaIndex, Deep Lake и Pinecone». Это практическое руководство для тех, кто хочет освоить передовые технологии искусственного интеллекта и научиться создавать эффективные системы на основе Retrieval-Augmented Generation (RAG).

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

Читать далее
1
23 ...

Информация

В рейтинге
Не участвует
Работает в
Зарегистрирован
Активность