Pull to refresh
405
92.8
Send message

Книга: «Нечеткое сопоставление данных в SQL»

Reading time14 min
Views6.6K
image Привет, Хаброжители!

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

Администраторы баз данных, программисты, бизнес-аналитики и специалисты по исследованию данных узнают, как выявлять и удалять дубликаты, разбирать строки, извлекать данные из XML и JSON, генерировать SQL с помощью SQL, упорядочивать данные и готовить наборы данных, а также применять подходы к качеству данных и ETL для поиска сходств и различий между различными выражениями одних и тех же данных.

Примеры, приведенные в книге, полны реальных приемов и содержат рабочий код.
Читать дальше →
Total votes 9: ↑9 and ↓0+12
Comments9

Книга: «Реальная криптография»

Reading time22 min
Views6.2K
image Привет, Хаброжители!

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

Изучите приемы, которые используют разработчики, системные администраторы и специалисты по безопасности в своей повседневной работе. Вы не встретите ни сложных математических выкладок, ни умопомрачительного жаргона: современные криптографические методы рассматриваются с помощью понятных графиков и практических примеров. Познакомьтесь с хеш-функциями и подписями, криптографическими протоколами и безопасным обменом сообщениями, а также с передовыми достижениями, такими как постквантовая криптография и криптовалюты. Читать «Реальную криптографию» одно удовольствие и, возможно, она спасет, когда в следующий раз злоумышленники покусятся на ваши данные.
Читать дальше →
Total votes 14: ↑14 and ↓0+17
Comments0

Next.js и революционные изменения в React

Reading time7 min
Views8.3K
image


React.js — это сейчас одна из самых популярных библиотек для создания современных веб-приложений. React славится гибкостью и богатством экосистемы. Одним из значительных достоинств этой экосистемы является Next.js — и то, как он успешно развивается. С этим фреймворком стало значительно удобнее разрабатывать приложения на основе React, их возможности расширились. В этой статье мы рассмотрим, как Next.js улучшил React, затронем его особенности, преимущества, и что из них вытекает.
Читать дальше →
Total votes 11: ↑5 and ↓6+2
Comments7

Коварные утечки памяти в React: как можно обжечься на useCallback и замыканиях

Reading time9 min
Views6.3K
image

Я работаю в Ramblr, это ИИ-стартап, где мы строим на React сложные приложения для аннотирования видео. Недавно мне попалась сложная утечка памяти, которая возникает при одновременном использовании замыканий JavaScript и хука useCallback в React. Поскольку я вырос на .NET, мне потребовалось немало времени, чтобы разобраться в происходящем. Поэтому я решил написать этот пост и рассказать вам, чему меня научила эта ситуация.
Читать дальше →
Total votes 14: ↑14 and ↓0+22
Comments24

Книга: «Тюнинг систем: экспериментирование для инженеров от A/B-тестирования до байесовской оптимизации»

Reading time19 min
Views1.3K
image Привет, Хаброжители!

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

Книга предоставляет набор инструментов для оптимизации программируемых систем. Вы пройдете путь от изучения А/В-тестирования до передовых экспериментальных стратегий, которые используют преимущества машинного обучения и вероятностных методов. Навыки, которые вы получите из этого практического руководства, помогут минимизировать затраты на эксперименты и быстро выбрать подходы и инструменты, которые дадут наилучший результат для бизнеса.
Читать дальше →
Total votes 3: ↑3 and ↓0+5
Comments0

Go развивается в неверном направлении

Reading time7 min
Views14K
Язык программирования Go известен своей простотой в использовании. Благодаря продуманному синтаксису, возможностям и инструментарию, Go позволяет писать легко читаемые и поддерживаемые программы произвольной сложности (см. этот список на GitHub).

Некоторые инженеры-программисты называют Go «скучным» и «устаревшим», поскольку в нем отсутствуют передовые возможности других языков программирования, такие как монады, опциональные типы, LINQ, средства проверки заимствований, абстракции с нулевыми издержками, аспектно-ориентированное программирование, наследование, перегрузка функций и процедур и т. д. Хотя эти возможности могут упростить написание кода для определенных областей, они имеют ненулевые издержки в дополнение к преимуществам. Эти возможности обычно хороши для тренировки мозга. Но нам не нужна дополнительная умственная нагрузка при работе с производственным кодом, поскольку мы и так заняты решением бизнес-задач. Основная цена всех этих возможностей – возрастание сложности результирующего кода:
Читать дальше →
Total votes 30: ↑24 and ↓6+23
Comments23

Книга: «Java для опытных разработчиков. 2-е издание»

Reading time22 min
Views5.3K
image Привет, Хаброжители!

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

Узнайте, как Java работает на уровне байт-кода. Освойте ценные приемы конкурентного выполнения и оптимизации быстродействия, а еще ключевые методы сборки, тестирования и развертывания. Также рассмотрите альтернативные языки для JVM – Kotlin и Clojure. Изучив материал, вы будете выделяться на фоне других разработчиков!
Читать дальше →
Total votes 3: ↑3 and ↓0+5
Comments4

Об извлечении кода в Python

Reading time6 min
Views5.7K
Я начал изучать Python в 2009 году, столкнувшись с очень нетривиальной и, кстати, необычной задачей на этом языке. Тогда я разрабатывал приложение для ПК, где графический пользовательский интерфейс создавался на PyQT, а основным языком в программе был Python.

Чтобы скрыть код, я встроил интерпретатор Python в самостоятельный исполняемый файл Windows. Это можно сделать при помощи множества инструментов (напр., pyinstaller, pyexe), все они функционально похожи. Они компилируют в байт-код ваши скрипты, написанные на Python, а далее, связывая их с интерпретатором, укладывают в исполняемый файл. Если компилировать скрипты, понижая их до байт-кода, то злоумышленникам становится сложнее добраться до вашего исходного кода и взломать ваше приложение. Байт-код приходится извлекать из исполняемого файла и декомпилировать. Кроме того, таким способом можно выполнять обфускацию кода, и в результате код становится гораздо сложнее понимать.
Читать дальше →
Total votes 11: ↑11 and ↓0+15
Comments2

FastAPI: веб-разработка на Python

Reading time14 min
Views12K
image Привет, Хаброжители!

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

Билл Любанович рассказывает о тонкостях разработки с применением FastAPI и предлагает множество рекомендаций по таким темам, как формы, доступ к базам данных, графика, карты и многое другое, что поможет освоить основы и даже пойти дальше. Кроме того, вы познакомитесь с RESTful API, приемами валидации данных, авторизации и повышения производительности. Благодаря сходству с такими фреймворками, как Flask и Django, вы легко начнете работу с FastAPI.
Читать дальше →
Total votes 9: ↑9 and ↓0+11
Comments3

Основы TypeScript

Reading time22 min
Views9.1K
image Привет, Хаброжители!

TypeScript — популярная надстройка над JavaScript с поддержкой статической типизации, которая наверняка покажется знакомой программистам на C# или Java. TypeScript поможет вам сократить количество ошибок и повысить общее качество кода на JavaScript.

«Основы TypeScript» — это полностью обновленное третье издание классического бестселлера Адама Фримена. В нем освещены все возможности TypeScript 5, включая новые, такие как декораторы. Сначала вы узнаете, зачем и почему был создан язык TypeScript, а затем почти сразу перейдете к практическому применению статических типов. Ничего лишнего! Каждая глава посвящена навыкам, необходимым для написания потрясающих веб-приложений.
Читать дальше →
Total votes 12: ↑11 and ↓1+16
Comments7

Книга: «Антипаттерны SQL. Как избежать ловушек при работе с базами данных»

Reading time10 min
Views16K
image Привет, Хаброжители!

Язык SQL необходим для работы со структурированными данными. Программисты, прекрасно знающие свой любимый язык (Java, Python или Go), не могут разбираться во всем, и часто не являются экспертами в SQL. Это приводит к появлению антипаттернов — решений, которые на первый взгляд кажутся правильными, но со временем создают все больше проблем.

Научитесь выявлять и обходить многие из этих распространенных ловушек! Проведите рефакторинг унаследованного кошмара и превратите его в жизнеспособную модель данных!

Примеры SQL-кода основаны на версии MySQL 8.0, но в тексте также упоминаются другие популярные РСУБД. В примерах кода используется Python 3.9+ или Ruby 2.7+.
Читать дальше →
Total votes 6: ↑6 and ↓0+11
Comments13

Книга «Микросервисы и API»

Reading time16 min
Views10K
image Привет, Хаброжители!

Простые и понятные API — необходимое условие успеха микросервисных приложений. Хорошо продуманные API гарантируют надежную интеграцию сервисов и помогают упростить сопровождение, масштабирование и дальнейшее совершенствование. Познакомьтесь с паттернами, протоколами и стратегиями, которые помогут вам проектировать, реализовывать и развертывать эффективные микросервисы с REST и GraphQL API.

Книга наполнена проверенными советами и примерами кода на языке Python. Авторы фокусируются на реализации, а не на философии. Изучите проверенные методы проектирования простых в использовании API для микросервисных приложений. Создавайте надежные API микросервисов, тестируйте, защищайте и развертывайте их в облаке, следуя принципам и шаблонам, применимым в любом языке программирования.
Читать дальше →
Total votes 5: ↑4 and ↓1+5
Comments1

Книга «Основы Dart»

Reading time7 min
Views3.1K
imageПривет, Хаброжители!

Книга «Основы Dart» адресована тем, кто интересуется этим удивительным языком программирования. Вы узнаете об истории создания, синтаксисе и особенностях языка, таких как встроенные типы данных, и многом другом. В главе 2 вас ждет проект, который будет изменяться и расти вместе с вашими знаниями и навыками, а к главе 6 преобразится в полноценное клиент-серверное приложение. После каждой новой итерации проекта вас будут ждать предложения по внесению изменений в его кодовую базу, что позволит прокачать свои hard-скиллы. Исходный код рассматриваемых в книге примеров можно найти в GitHub-репозитории автора (весь код в книге соответствует Dart 3.4).
Читать дальше →
Total votes 7: ↑7 and ↓0+10
Comments2

Книга: «Алгоритмы с нуля»

Reading time20 min
Views15K
image Привет, Хаброжители!

Погрузитесь в мир алгоритмов! Разберитесь в их принципах, особенностях проектирования и практического применения.

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

Каждая глава содержит понятные объяснения, наглядные примеры и задачи, помогающие закрепить изученный материал. Особый акцент сделан на вычислительном мышлении и анализе эффективности алгоритмов — важнейших навыках в области современных технологий.
Читать дальше →
Total votes 9: ↑7 and ↓2+10
Comments14

Разделяемость данных между микросервисами

Reading time7 min
Views4.7K
image


Когда я только начинал работать с микросервисами, я чрезмерно буквально следовал общему правилу «не допускайте, чтобы два сервиса совместно использовали один источник данных».
Этот тезис фигурирует повсюду в Интернете как заповедь: «да не раздели ты базу данных между двумя сервисами» и, определённо, в нём есть смысл. Сервис должен владеть собственными данными и иметь возможность свободно менять их схему так, как будет сочтено нужным, не меняя при этом API, направленный вовне.

Но здесь есть важная тонкость, которую я осознал далеко не сразу. Чтобы как следует применять это правило, необходимо различать совместное использование источника данных и совместное использование данных как таковых.
Читать дальше →
Total votes 14: ↑13 and ↓1+15
Comments2

Проблема «Грохочущего стада»

Reading time5 min
Views3.5K
Ещё одна история о распределённых системах

Давайте перенесёмся в апрель 2018 года. Тогда я работал на стартапе, который собирался выпустить очень востребованную новую функцию. Мы уже сформировали лист ожидания, но о дате запуска не распространялись (в основном потому, что не знали, когда закончится разработка).

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

Мы не ожидали такого наплыва входящего трафика, и вскоре стали поступать предупреждения о падении сервисов из-за неконтролируемой паники, которую мы не учли. После исправления мы повторно развернули систему, на мгновение поток предупреждений прекратился, и мы могли расслабиться. Однако это было недолго, так как через 5 минут начал появляться совершенно другой набор предупреждений (высокая задержка, высокое использование ЦП). Пришло время снова поработать в аврале.
Читать дальше →
Total votes 10: ↑10 and ↓0+18
Comments3

Книга «Пульсирующая Вселенная»

Reading time19 min
Views12K
imageПривет, Хаброжители!

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

Стивен Хокинг считал, что ничто до Большого взрыва не может повлиять на нас. Мы полагаем, что он ошибался: история Вселенной до Большого взрыва имеет важное значение для нашего космологического цикла, и реликты прошлых циклов в изобилии рассеяны вокруг. Главными реликтовыми объектами являются массивные черные дыры.

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

Популярное изложение ключевых проблем космологии и их разрешение с помощью теории осциллирующей Вселенной доступно самому широкому кругу читателей, интересующихся данной темой. В приложении содержится исчерпывающее математическое описание осциллирующей Вселенной с переменной гравитационной массой.
Читать дальше →
Total votes 21: ↑21 and ↓0+30
Comments24
1
23 ...

Information

Rating
Does not participate
Works in
Registered
Activity