Выбор структур данных для самописного текстового редактора
Программирование текстовых редакторов может быть очень интересной и сложной задачей. Типы задач, которые должны решать текстовые редакторы, варьируются от тривиальных до невероятно трудных. Недавно я занимался переработкой внутренних структур данных редактора, над которым я работаю. В частности, самой фундаментальной для любого текстового редактора структуры данных: текста.
Ресурсы
Прежде чем мы приступим к разбору того, что я сделал, важно упомянуть очень полезные ресурсы для создания собственного текстового редактора:
* Build Your Own Text Editor — наверно, самый фундаментальный пост о создании текстового редактора с нуля, который я видел. Это превосходный туториал на случай, если вы хотите начать писать собственный текстовый редактор. Стоит заметить, что в редакторе из этого туториала в качестве внутренней структуры для текста используется, по сути, вектор строк.
* Text Editor: Data Structures — отличный обзор множества структур данных, которые можно использовать при реализации текстового редактора. (Спойлер: как минимум одна из них будет рассмотрена в моём посте)
* Плейлист Ded (Text Editor) на YouTube — это потрясающая серия, в которой @tscoding фиксирует процесс создания с нуля текстового редактора. Эти видео стали для меня источником вдохновения.
Зачем?
Если в сети есть так много хороших ресурсов о создании собственного текстового редактора (не говоря уже о том, что уже существует множество феноменальных текстовых редакторов), то зачем я это пишу? На то есть несколько причин:
1. Я хотел заняться проектом, непохожим ни на один свой прошлый.
2. Я хотел создать инструмент, которым смогу пользоваться.
3. Мне всегда хотелось глубже разобраться с созданием собственных структур данных.
Читать: https://habr.com/ru/companies/ruvds/articles/743954/
Программирование текстовых редакторов может быть очень интересной и сложной задачей. Типы задач, которые должны решать текстовые редакторы, варьируются от тривиальных до невероятно трудных. Недавно я занимался переработкой внутренних структур данных редактора, над которым я работаю. В частности, самой фундаментальной для любого текстового редактора структуры данных: текста.
Ресурсы
Прежде чем мы приступим к разбору того, что я сделал, важно упомянуть очень полезные ресурсы для создания собственного текстового редактора:
* Build Your Own Text Editor — наверно, самый фундаментальный пост о создании текстового редактора с нуля, который я видел. Это превосходный туториал на случай, если вы хотите начать писать собственный текстовый редактор. Стоит заметить, что в редакторе из этого туториала в качестве внутренней структуры для текста используется, по сути, вектор строк.
* Text Editor: Data Structures — отличный обзор множества структур данных, которые можно использовать при реализации текстового редактора. (Спойлер: как минимум одна из них будет рассмотрена в моём посте)
* Плейлист Ded (Text Editor) на YouTube — это потрясающая серия, в которой @tscoding фиксирует процесс создания с нуля текстового редактора. Эти видео стали для меня источником вдохновения.
Зачем?
Если в сети есть так много хороших ресурсов о создании собственного текстового редактора (не говоря уже о том, что уже существует множество феноменальных текстовых редакторов), то зачем я это пишу? На то есть несколько причин:
1. Я хотел заняться проектом, непохожим ни на один свой прошлый.
2. Я хотел создать инструмент, которым смогу пользоваться.
3. Мне всегда хотелось глубже разобраться с созданием собственных структур данных.
Читать: https://habr.com/ru/companies/ruvds/articles/743954/
Real-Time Insights Through the Atlas SQL Interface, Now Generally Available with Custom Connectors for Tableau and Power BI
Read: https://www.mongodb.com/blog/post/real-time-insights-through-atlas-sql-interface
Read: https://www.mongodb.com/blog/post/real-time-insights-through-atlas-sql-interface
Configuring MariaDB Databases for Disaster Recovery for Self-Hosted ServiceNow Deployments
Read: https://mariadb.com/?p=36789
Read: https://mariadb.com/?p=36789
Was die Geschäftsleitung über die Datenstrategie für 2023 wissen sollte
Read: https://www.mongodb.com/blog/post/what-c-suite-should-know-data-strategy-2023-de
Read: https://www.mongodb.com/blog/post/what-c-suite-should-know-data-strategy-2023-de
Tarantool: «серебряная пуля» для построения микросервисной архитектуры VK Teams
Основной многих проектов являются кастомные решения и инструменты — часто кажется, что так проще и быстрее. Но на практике при динамичном масштабировании проектов наличие крупных кастомных узлов начинает создавать трудности: требуется больше времени, ресурсов и дополнительных издержек. Поэтому с ростом проектов командам нередко разумнее пересматривать стек в пользу готовых решений.
Читать: https://habr.com/ru/companies/vk/articles/743390/
Основной многих проектов являются кастомные решения и инструменты — часто кажется, что так проще и быстрее. Но на практике при динамичном масштабировании проектов наличие крупных кастомных узлов начинает создавать трудности: требуется больше времени, ресурсов и дополнительных издержек. Поэтому с ростом проектов командам нередко разумнее пересматривать стек в пользу готовых решений.
Читать: https://habr.com/ru/companies/vk/articles/743390/
Подойдет ли PostgreSQL вообще всем проектам или нужны альтернативы
В интернете только и разговоров, что про PostgreSQL и MySQL, но выбор СУБД много шире. В этом материале мы рассмотрим несколько популярных баз данных, разберемся с их спецификацией и сценариями использования, чтобы выйти за рамки привычных решений.
Читать: https://habr.com/ru/companies/selectel/articles/740680/
В интернете только и разговоров, что про PostgreSQL и MySQL, но выбор СУБД много шире. В этом материале мы рассмотрим несколько популярных баз данных, разберемся с их спецификацией и сценариями использования, чтобы выйти за рамки привычных решений.
Читать: https://habr.com/ru/companies/selectel/articles/740680/
🔥1
MongoDB Server-Side Kotlin Driver Now Generally Available
Read: https://www.mongodb.com/blog/post/mongodb-releases-server-side-kotlin-driver
Read: https://www.mongodb.com/blog/post/mongodb-releases-server-side-kotlin-driver
Driving Innovation through Data Refactoring: Empowering Applications with MongoDB Atlas and AWS Modernization Strategies
Read: https://www.mongodb.com/blog/post/empowering-applications-mongodb-atlas-aws-modernization-strategies
Read: https://www.mongodb.com/blog/post/empowering-applications-mongodb-atlas-aws-modernization-strategies
Переизобретаем сжатие в распределённой базе данных
Привет, Хабр! Меня зовут Антон Виноградов, я Java-разработчик в СберТехе, работаю в команде, развивающей Platform V DataGrid — распределённую базу данных на основе Apache Ignite, доработанную до корпоративного уровня по безопасности, надёжности и производительности. Я реализовал альтернативный «ванильному» вариант сжатия данных в нашем продукте и хочу рассказать, в чём нам удалось превзойти оригинал.
Читать: https://habr.com/ru/companies/sberbank/articles/744282/
Привет, Хабр! Меня зовут Антон Виноградов, я Java-разработчик в СберТехе, работаю в команде, развивающей Platform V DataGrid — распределённую базу данных на основе Apache Ignite, доработанную до корпоративного уровня по безопасности, надёжности и производительности. Я реализовал альтернативный «ванильному» вариант сжатия данных в нашем продукте и хочу рассказать, в чём нам удалось превзойти оригинал.
Читать: https://habr.com/ru/companies/sberbank/articles/744282/
[recovery mode] Тотально виртуально, гиперконвергентно
По прогнозам MarketsandMarkets, глобальный рынок гиперконвергентных систем к 2025 году достигнет объёма в 17,1 млрд долларов США. Среди факторов, стимулирующих рост рынка гиперконвергентной архитектуры, можно выделить повышенный интерес к облачным вычислениям, виртуализации, стремление сократить расходы на инфраструктуру и упростить управление.
Гиперконвергентной называют программно определяемую инфраструктуру, в которой вычислительные и сетевые ресурсы, а также хранилища составляются из унифицированных компонентов без заранее выделенных ролей. Такая архитектура обеспечивает простоту, скорость и наглядность, а также единообразие вместо дискретности.
В этой статье мы рассмотрим сервер Altos BrainSphere R380 F5, который отлично подходит для использования в качестве унифицированного компонента гиперконвергентной архитектуры.
Читать: https://habr.com/ru/companies/acer/articles/744452/
По прогнозам MarketsandMarkets, глобальный рынок гиперконвергентных систем к 2025 году достигнет объёма в 17,1 млрд долларов США. Среди факторов, стимулирующих рост рынка гиперконвергентной архитектуры, можно выделить повышенный интерес к облачным вычислениям, виртуализации, стремление сократить расходы на инфраструктуру и упростить управление.
Гиперконвергентной называют программно определяемую инфраструктуру, в которой вычислительные и сетевые ресурсы, а также хранилища составляются из унифицированных компонентов без заранее выделенных ролей. Такая архитектура обеспечивает простоту, скорость и наглядность, а также единообразие вместо дискретности.
В этой статье мы рассмотрим сервер Altos BrainSphere R380 F5, который отлично подходит для использования в качестве унифицированного компонента гиперконвергентной архитектуры.
Читать: https://habr.com/ru/companies/acer/articles/744452/
От флешек к ДНК: разбираемся в новой технологии хранения данных
В ближайшие три года общее количество цифровых данных увеличится в три раза и достигнет 175 миллиардов терабайт. Надежно сохранить такое количество информации на жестких дисках и магнитных лентах будет практически невозможно, строительство дата-центров тоже не спасет ситуацию, поэтому ученые сейчас активно работают над технологией хранения данных в ДНК.
В этой статье мы расскажем, что из себя представляют ДНК-накопители, в чем их преимущества и недостатки, и по шагам разберем, как информацию сохранять в молекуле и извлекать из нее.
Читать: https://habr.com/ru/companies/itglobalcom/articles/743248/
В ближайшие три года общее количество цифровых данных увеличится в три раза и достигнет 175 миллиардов терабайт. Надежно сохранить такое количество информации на жестких дисках и магнитных лентах будет практически невозможно, строительство дата-центров тоже не спасет ситуацию, поэтому ученые сейчас активно работают над технологией хранения данных в ДНК.
В этой статье мы расскажем, что из себя представляют ДНК-накопители, в чем их преимущества и недостатки, и по шагам разберем, как информацию сохранять в молекуле и извлекать из нее.
Читать: https://habr.com/ru/companies/itglobalcom/articles/743248/
MongoDB Gives Users a Simple Way to Install Atlas Kubernetes Operator and Import MongoDB Atlas Clusters via the Atlas CLI
Read: https://www.mongodb.com/blog/post/gives-users-simple-install-atlas-kubernetes-operator-import-atlas-clusters-atlas-cli
Read: https://www.mongodb.com/blog/post/gives-users-simple-install-atlas-kubernetes-operator-import-atlas-clusters-atlas-cli
Oracle Announces Oracle Database for Arm Architectures in the Cloud & On-Premises
Oracle today announced that Oracle Database 19c Enterprise Edition, the current long-term support release of Oracle Database, is now certified and available on the popular Arm architecture for both cloud and on-premises deployments.
Read: https://blogs.oracle.com/database/post/announcing-oracle-database-19c-support-for-arm
Oracle today announced that Oracle Database 19c Enterprise Edition, the current long-term support release of Oracle Database, is now certified and available on the popular Arm architecture for both cloud and on-premises deployments.
Read: https://blogs.oracle.com/database/post/announcing-oracle-database-19c-support-for-arm
Leveraging MongoDB to Build Cutting-Edge AI Solutions
Read: https://www.mongodb.com/blog/post/leveraging-mongodb-build-cutting-edge-ai-solutions
Read: https://www.mongodb.com/blog/post/leveraging-mongodb-build-cutting-edge-ai-solutions
❤1
Bendigo and Adelaide Bank Reflects on Their Successful Digital Transformation with MongoDB Atlas
Read: https://www.mongodb.com/blog/post/bendigo-adelaide-bank-reflects-on-their-successful-digital-transformation-mongodb
Read: https://www.mongodb.com/blog/post/bendigo-adelaide-bank-reflects-on-their-successful-digital-transformation-mongodb
What's New in Atlas Charts: Suggested Charts, Auto Activation, and Contextual Help
Read: https://www.mongodb.com/blog/post/new-atlas-charts-suggested-auto-activation-contextual-help
Read: https://www.mongodb.com/blog/post/new-atlas-charts-suggested-auto-activation-contextual-help
Atlas Data Federation: Can Now Be Deployed in Azure and Supports Azure Blob Storage in Private Preview
Read: https://www.mongodb.com/blog/post/atlas-data-federation-can-be-deployed-azure-supports-azure-blob-storage-public-preview
Read: https://www.mongodb.com/blog/post/atlas-data-federation-can-be-deployed-azure-supports-azure-blob-storage-public-preview
Почему SRE приносит пользу командам и клиентам
SRE объединяет группы разработчиков программного обеспечения и инженеров эксплуатации и помогает создавать надежные, отказоустойчивые и масштабируемые системы. Некоторые из преимуществ этой методологии:
• Улучшаются коммуникации в команде
• Совершенствуется культура
• Уменьшается доля ручного труда
• Клиенты чаще остаются довольны
Читать: https://habr.com/ru/companies/southbridge/articles/744870/
SRE объединяет группы разработчиков программного обеспечения и инженеров эксплуатации и помогает создавать надежные, отказоустойчивые и масштабируемые системы. Некоторые из преимуществ этой методологии:
• Улучшаются коммуникации в команде
• Совершенствуется культура
• Уменьшается доля ручного труда
• Клиенты чаще остаются довольны
Читать: https://habr.com/ru/companies/southbridge/articles/744870/
Parallelize Your Command-line Replica with GTID-aware mariadb-binlog (part 2)
Read: https://mariadb.com/?p=36807
Read: https://mariadb.com/?p=36807
SQL Migrations Made Easy with PeerIslands SQL Migration Factory
Read: https://www.mongodb.com/blog/post/sql-migrations-made-easy-peerislands-sql-migration-factory
Read: https://www.mongodb.com/blog/post/sql-migrations-made-easy-peerislands-sql-migration-factory
MongoDB al servizio dei cittadini: Polo Strategico Nazionale, Cloud ed Healthcare
Read: https://www.mongodb.com/blog/post/mongodb-al-servizio-dei-cittadini-polo-strategico-nazionale-cloud-ed-healthcare
Read: https://www.mongodb.com/blog/post/mongodb-al-servizio-dei-cittadini-polo-strategico-nazionale-cloud-ed-healthcare