Как стать автором
Обновить

Побег из экосистем в 2023

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров5.9K

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

Что такое эти ваши экосистемы?

Давайте представим себе экосистему, как замечательный остров. На этом острове живут разные животные, растения, и даже есть реки и озера. Все они связаны между собой: рыбы питаются микроорганизмами, птицы едят рыбу, деревья предоставляют тень и плоды, а животные поддерживают баланс растительности. Эта сложная и удивительная взаимосвязь делает остров устойчивым и живым.

Теперь перенесём этот пример на технологии. Экосистемы, такие как Apple или Google, это как технологические "острова", где устройства, программы и сервисы взаимодействуют между собой. Если у вас есть iPhone (телефон от Apple), вы можете легко поделиться фотографиями с вашим iPad (планшетом) или посмотреть их на вашем Mac (компьютере). Всё это благодаря "экосистеме" Apple, где всё создано для удобства и простоты взаимодействия.

Google тоже имеет свою экосистему. Если вы используете почтовый сервис Gmail, то вы можете автоматически войти в YouTube, Google Drive или Google Photos. Одна учетная запись связывает все эти сервисы.

Другие примеры экосистем, более простых:

  • Microsoft: С помощью одной учетной записи вы можете работать на компьютере с Windows, играть на Xbox и использовать Office 365.

  • Amazon: Когда вы покупаете книгу на Amazon, вы можете прочитать её на Kindle или послушать аудиоверсию на Audible.

  • Facebook: Эта компания владеет несколькими социальными платформами, такими как Instagram и WhatsApp, и позволяет интегрировать их между собой.

Экосистемы - это способ делать жизнь проще и удобнее, соединяя разные сервисы и устройства в единую сеть. Так что когда вы выбираете продукт или услугу, вы часто получаете доступ ко многим другим возможностям в рамках одной экосистемы. Это как выбрать остров для жизни и наслаждаться всеми его преимуществами…

Чем же они хороши?

Экосистемы приносят ряд преимуществ, которые делают их привлекательными для пользователей:

  • Удобство: Один из основных плюсов — это удобство использования. Когда устройства и сервисы разработаны для работы вместе, пользовательский опыт становится более гладким и интуитивно понятным. Например, фотографии, сделанные на вашем iPhone, могут автоматически появиться на вашем Mac или iPad.

  • Интеграция: Экосистемы позволяют объединить множество услуг. Это значит, что информация может легко переходить между различными приложениями и устройствами. Если вы пишете заметку на своем смартфоне, она может быть доступна на вашем компьютере или планшете.

  • Безопасность: Такие компании, как Apple и Google, уделяют много внимания безопасности своих экосистем. Они обновляют свои системы, чтобы защитить данные пользователей от угроз и вирусов.

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

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

  • Доступ к новым продуктам и функциям: Пользователи экосистемы часто получают доступ к новинкам и эксклюзивным функциям.

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

  • Обслуживание и поддержка: Компании, предоставляющие экосистемы, часто предлагают централизованную поддержку и обслуживание для всех своих продуктов.

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

Удобно? Бесспорно!

А где подвох?

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

  • Зависимость от одного поставщика (Vendor lock-in): После того как пользователи инвестируют в определенную экосистему (покупка устройств, приложений, подписок), им может быть трудно перейти к другому поставщику без значительных затрат или потерь.

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

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

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

  • Отсутствие инноваций: Если компания доминирует на рынке, ей может не хватать мотивации для инноваций, так как конкуренция уменьшается.

  • Совместимость: Некоторые экосистемы могут быть несовместимы с продуктами или услугами из других экосистем, что делает интеграцию между различными платформами сложной.

  • Риски безопасности: Хотя большие технологические компании уделяют много внимания безопасности, широко распространенные экосистемы могут стать целью для хакеров и мошенников.

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

Для многих из нас технология стала неотъемлемой частью жизни. Мы доверяем ей свои фотографии, заметки, даже бизнес-проекты. Но представьте себе ситуацию, когда, например, вы не можете оплатить подписку на свой облачный сервис, как это случилось со мной в Apple One. Внезапно я осознал, как многое из того, что мне дорого, зависит от одной компании.

И что теперь делать? (Манифест)

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

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

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

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

Памятка создателям приложений

Возьмем пример Apple. Взглянем как устроена операционная система, мы увидим логично разбитые папки Документы, Изображения, Музыка. 

Но, заглянем в папку Изображения, где мы видим пару сущностей “Медиатека Фото.photoslibrary”, “Фототека Photo Booth”. Если нажать на них, откроется приложение Фото или Photo booth. Эти сущности называются пакетами, это папки “с защитой от дурака”. Что бы посмотреть содержимое такой папки/пакета можно вызвать дополнительное меню и выбрать “посмотреть пакет”. Внутри пакета мы видим папку с нашими фото, а так же дополнительные метаданные и БД требующиеся для приложения. Но так ли важна такая защита? Ответ нет, потому что…

Взглянем теперь на папку Музыка, где вместо пакета, находится обычная открытая для всех папка “Music” в которую мы спокойно можем зайти и увидеть список папок с исполнителями. Приложение музыка не запаковывает всю папку в пакет. Правда, всё равно хранит всю папку с музыкой “при себе”.

Когда создавались основные папки Документы, Изображения, Музыка обществом закладывался иной подход и иная идея. Каждая папка должна была быть наполенена самими файлами, а не пакетами программ и их базами данных. Задумывалось это для того что бы ЛЮБАЯ программа работающая с фотографиями, могла работать с фотографиями пользователя, а не только приложение “Фото” от Apple.

Это пример того как именно Apple ограничевает людей оставляя в своей экосистеме. Например если вы найдете альтернативное приложение для работы со своими фотографиями, то для использования совместно с программой “фото” от Apple, вам придется сделать дубликат всех ваших фотографий, или пользоваться приложением с API Apple, или искать иной подход.

Если вы создаете мультиплатформенное приложение, не делайте как Apple. Делайте так что бы ваше приложение использовало папки по назначению, размещайте данные пользователя в предназначенных папках ОС. Если же вам требуется БД для метаданных, никто не мешает разместить ее где то внутри приложения, а сами данные пользователя оставьте в папке пользователя предназначенной для этого.

Немного про облака их использование

Сейчас когда ты дочитал до этого места, ты непременно задаешься вопросом… автор ты в курсе что есть облака вообще-то, понимаешь что файлы в папках пользователя это всего лишь дополнительное кеширование?

Когда я понял, что мои данные находятся целиком в iCloud я понял насколько зависимость от вендора высока. Действительно я сразу зашел в настройки и убрал галочки “оптимизации”. Я сделал так что бы файлы ханились на моем устройстве, а для синхронизации использовали облако, а не наоборот.

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

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

Ну не только же в софте дело?

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

Да действительно, если посмотреть на остальные удобства которые предоставляет нам например Apple это:

  1. Синхронизация данных между всеми своими девайсами

  2. Универсальный буфер обмена

  3. Шаринг данных для наших знакомых и друзей

  4. И еще целый список неспецифичных для каждодневного использования фич

Это пожалуй основные якоря которые не позволяют вот так просто взять и перейти на другую экосистему. И кстати некоторые пункты касаются как не удивительно софта.

Синхронизация данных между всеми своими девайсами

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

Универсальный буфер обмена

На базе Syncthing можно построить больше чем просто синхронизацию данных, но и универсальный буффер обмена. Я смотрел в сторону универсальных буфферов обмена, но многие из них работают лишь с определенными типами данных (например нельзя передать видео, но можно лишь текст и картинки) либо же используют сервера третьих лиц, что не гарантирует безопасность вашего буффера обмена. Неплохое решение Uniclip, но в любом случае придется запустить сервер для обмена данных на каком то сервере.

Вообще как устроен буффер обмена? При копировании в буффере обмена создается несколько видов форматов данных. Например мы выделили кусок текста содержащего текст и картинки. В буффере обмена создается как сам кусок в формате RTF, так и отдельно текст, и отдельно картинки. Когда же мы делаем вставку, приложение которое берет инфромацию из буффера обмена, принимает первый наиболее подходящий ему формат.

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

Работает просто, звучит просто, но саму программу буффера обмена я пока только проектирую.

Шаринг данных для наших знакомых и друзей

Пока я не нашел удобных вариантов покрывающих все платформы… opendrop например находится в зачаточном состоянии. Пока очень удобно скинуть файлы через мессенджер, что же дело до расшаривания папок, то подойдет и Storj, хотя пока это и все еще делать не так удобно как хотелось бы.

Так какие еще приложения еще требуются?

Собственно можно выделить несколько необходимых приложений, удобных как приложения от Apple:

  1. Демон универсального буффера обмена (формат .rtfd), для Syncthing

  2. Приложение заметки (папка “документы/заметки”, в виде .rtfd или .pdf файлов).

  3. Приложение списка дел (папка “документы/дела”, в виде .tda или иного формата файлов) 

  4. Приложение календарь (папка “документы/календари”, в виде .ics файлов)

  5. Приложение контактов (папка “документы/контакты”, в виде .vcard или .vcf файлов)

  6. Приложение фото (папка “документы/альбомы”)

Главное требование это работа и хранение данных локально не используя сервера третьих лиц и приятный интерфейс. Эти требования на самом деле довольно серьезные, т.к. большинство приложений которые я смотрел имели эти недостатки.

Божемой, да зачем все это нужно еще и писать?

Итак, подумаем вместе: оставаться в уютной экосистеме, где всё знакомо, как старые джинсы, или рискнуть и расширить горизонты? Большинство из нас предпочтёт первый вариант. Конечно, удобно, когда всё под рукой. Но что, если однажды та самая "облачная" магия перестанет работать? Представьте: ваш дневник идей, фото с последнего путешествия и даже рабочие проекты могут за секунду превратиться в воздух.

Тут-то и начнётся головная боль: как всё вернуть? Эта статья как раз приглашение к размышлению и, возможно, один из ответов на этот вопрос. Давайте не ждать, пока молния ударит — лучше быть готовыми заранее.

Читать далее: Альтернативная ОС вместо Apple в 2023

Теги:
Хабы:
Всего голосов 4: ↑4 и ↓0+4
Комментарии10

Публикации

Истории

Ближайшие события

7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
28 ноября
Конференция «TechRec: ITHR CAMPUS»
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань