GrapheneOS is ready to break free from Pixels 🔥 Горячее 💬 Длинная дискуссия
GrapheneOS, ориентированная на приватность модификация Android, готова расширить поддержку за пределы устройств Google Pixel. Проект подтвердил партнерство с крупным производителем Android-смартфонов для установки своей ОС на флагманы на чипах Snapdragon. Поддержка появится в Pixel 10, но будущее Pixel 11 под вопросом. Новые устройства будут стоить примерно как Pixel и появятся глобально как часть стандартного ассортимента бренда.
Партнерство развивается с июня 2025 года, и GrapheneOS критиковала Google за слишком долгие сроки обновлений безопасности. Для текущих владельцев Pixel ничего не изменится, их устройства продолжат поддерживаться до конца жизненного цикла. Хотя имя партнера не раскрывается, некоторые предполагают, что это может быть Nothing, но компания пока не считается "крупным OEM".
Комментарии (160)
- GrapheneOS объявил о партнерстве с OEM-производителем, но не раскрывает его имени; устройства будут стоить как Pixel, но неясно, охватывает ли это весь ряд моделей.
- Пользователи обсуждают, что это может означать для доступности, цены и поддержки устройств, а также то, что GrapheneOS не раскрывает, будет ли новое устройство иметь слот для SIM и поддерживать microG.
- Обсуждается, что это может повлиять на стоимость и доступность устройств, а также то, что GrapheneOS не раскрывает, будет ли новое устройство иметь слот для SIM и поддерживать microG.
- Пользователи выражают обеспокоенность по поводу того, что новое устройство может не поддерживать microG и/или не иметь слота для SIM-карты, что может ограничить использование некоторых приложений.
- Некоторые пользователи выражают обеспокоенность по поводу того, что новое устройство может не поддерживать microG и/или не иметь слота для SIM-карты, что может ограничить использование некоторых приложений.
Bare Metal (The Emacs Essay)
Автор представляет свой "лифт-питч" для Emacs: это бесплатный текстовый редактор с открытым кодом, где можно изменять его базовые функции прямо во время работы. Хотя Emacs сложнее VS Code или аналогов, освоив его, пользователь получает, возможно, самое мощное прикладное ПО. Автор переключился с Sublime Text на Vim, а затем на Emacs, стремясь освоить инструмент на долгие годы. Vim с его модальным редактированием ("hjkl" для навигации, команды вместо текста при нажатии Esc) показался концептуально верным, но выбор пал на Emacs — "расширенный, расширяемый, настраиваемый, самодокументируемый редактор". В статье подчеркивается важность не только доступа к инструментам, но и практики, как гласит девиз Whole Earth: "доступ к идеям, инструментам и практикам". Включены цитаты о "правлении больных машин" (технопатократии) и концепции, что вселенная "раскручивается" против энтропии.
Комментарии (63)
- Emacs не включает LSP-серверы и другие современные инструменты, что вызывает раздражение у пользователей, особенно на Windows.
- Сторонники Emacs утверждают, что это не проблема, потому что Emacs — это не просто редактор, а платформа, куда можно подключить всё, что угодно.
- Критика отвечает, что даже базовые вещи вроде grep-find и LSP-серверов не включены, и что это делает Emacs менее привлекательным для новых пользователей.
- Некоторые участники обсуждения отмечают, что Emacs — это скорее "платформа", чем "редактор", и что его можно расширить до нужд любого пользователя.
Surveillance data challenges what we thought we knew about location tracking 🔥 Горячее
4
- "The 4 is the only exception to the rule the 4 is not an exception.//\x00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00
Комментарии (101)
- Обсуждение показало, что технические уязвимости вроде SS7 и отсутствие защиты от него в телекоммуникациях позволяют частным компаниям и государству отслеживать людей по всему миру, и это вызывает серьёзные вопросы о приватности и контроле.
- Участники подчеркнули, что журналисты редко задают вопросы о том, почему эти технические методы вообще разрешены, и что это говорит о более глубоких политических и экономических мотивах.
- Обсуждение также подняло вопрос о том, что даже такие технические детали, как то, что телекоммуникационные компании могут продавать данные о местоположении, или что такие данные могут быть использованы для взлома аккаунтов, не получают должного внимания.
- Участники также отметили, что вместо того, чтобы обсуждать технические детали, журналисты и общественность должны сосредоточиться на том, что мотивирует лидеров позволять такие системы существовать, и что это говорит о более широком кризисе демократического контроля и отсутствии прозрачности.
- В конце обсуждение подняло вопрос о том, что если мы не можем контролировать даже наши телефоны, то как мы можем надеяться контролировать правительство, и что это говорит о том, что демократия требует здорового скептицизма к таким заявлениям.
Why Is SQLite Coded In C 💬 Длинная дискуссия
SQLite написан на C, а не на более современных языках, по нескольким ключевым причинам.
Производительность и контроль: C позволяет разработчикам писать код, который выполняется максимально близко к аппаратному уровню, что критично для низкоуровневых библиотек, таких как SQLite. Хотя некоторые языки могут заявлять о схожей производительности, C остается эталоном. Кроме того, его "портабельность" (работа практически на любой платформе) делает его универсальным.
Совместимость и стабильность: Библиотеки на C могут использоваться практически из любого другого языка программирования, что делает SQLite доступным для разработчиков на разных платформах и в разных экосистемах. C также является зрелым и стабильным языком, что минимизирует риски, связанные с изменчивостью более молодых языков.
Минимальные зависимости: В отличие от многих современных языков, которые требуют объемные среды выполнения, код на C имеет минимальные зависимости. Это делает развертывание легким и надежным, что критично для встраиваемых систем, где SQLite часто используется.
Хотя существуют аргументы в пользу использования объектно-ориентированных или "безопасных" языков (таких как Rust), эти варианты были либо недоступны, либо незрелы, когда начиналась разработка SQLite. Более того, переход на новый язык потребовал бы значительных усилий без гарантии улучшений, особенно учитывая, что SQLite уже хорошо отлажен и оптимизирован в своей текущей реализации на C.
Комментарии (255)
- Обсуждение вращается вокруг того, стоит ли переписывать SQLite на другие языки, но аргументы сводятся к тому, что существующий код уже безупречен, а переписывание может внести новые баги и даже замедлить работу.
- Подчеркивается, что SQLite — это не только код, но и 100% покрытие тестами и 25 лет отладки, что делает язык менее важным, чем для других проектов.
- Участники обсуждения отмечают, что языки вроде Rust всё ещё молоды и меняются, а также не предоставляют преимуществ в контексте уже готового кода.
- Поднимается вопрос о том, что важнее — язык или разработчики, и подчеркивается, что последние могут писать на любом языке, если бы это действительно было нужно.
Unpacking Cloudflare Workers CPU Performance Benchmarks 🔥 Горячее
После публикации результатов тестов, показывающих, что Cloudflare Workers значительно уступают по производительности Vercel, команда Cloudflare проанализировала тест и обнаружила ряд факторов, повлиявших на результат.
Во-первых, выяснилось, что в тесте использовалась более старая версия Cloudflare Workers, которая не была оптимизирована для этого конкретного типа нагрузки. Cloudflare немедленно выпустила обновление, улучшающее производительность.
Во-вторых, в тесте использовалась библиотека, которая вносила дополнительные накладные расходы на стороне Cloudflare, но не на стороне Vercel. После замены библиотеки на более оптимизированную, разница в производительности значительно сократилась.
Кроме того, команда обнаружила, что тест не полностью изолировал переменные — часть замедления была вызвана сетевыми задержками, а не производительностью самого Workers. После настройки теста для измерения только времени выполнения кода, разница стала минимальной.
В конечном счете, Cloudflare удалось не только догнать, но и превзойти Vercel по некоторым показателям, просто устранив узкие места в своем стеке.
Ключевой вывод: всегда полезно проверять свои тесты и окружение, прежде чем делать выводы о производительности. Иногда проблема не там, где кажется.
Комментарии (56)
- Cloudflare и Vercel продолжают обмениваться тестами и оптимизациями, но вместо обвинений они фактически сотрудничают, чтобы улучшить свои продукты.
- Стороны соревнуются в прозрачности: Cloudflare публикует исходные данные теста, а Vercel делает тот же тест открытым исходным кодом.
- Сообщество отмечает, что обе платформы теперь демонстрируют лучшую производительность, чем раньше, и что конкуренция в конечном счете выгодна для пользователей.
AppLovin nonconsensual installs
Приложение AppLovin устанавливает игры и другие приложения на устройства Android без согласия пользователей — просто при нажатии на рекламу. Разработчик разбирает код AppLovin и находит, что он использует JavaScript для создания iframe, который загружает APK-файлы, и партнерские сервисы, такие как Samsung и T-Mobile, затем устанавливают их. Пользователи сообщают о нежелательных установках, при этом один пользователь предоставляет видео, показывающее, как нажатие кнопки «Назад» в объявлении приводит к установке приложения.
AppLovin оправдывается тем, что пятисекундный таймер перед установкой дает пользователям возможность отменить, но пользователи утверждают, что даже в этом случае они не давали согласия на установку приложений, а лишь хотели отменить. В ответ на жалобы AppLovin удалила свою страницу справки, но код продолжает работать.
В более широком смысле AppLovin — это публичная компания, недавно привлекшая внимание после обвинений в том, что она скрывает рекламу для онлайн-казино и отправляет пользовательские данные в Китай.
Комментарии (49)
- Пользователи обсуждают, как рекламная сеть AppLovin и подобные ей компании устанавливают приложения без явного согласия пользователя, включая установку в фоновом режиме после нажатия на рекламу.
- Обсуждается, что такие практики затрагивают не только Android, но и iOS, хотя в последнем случае возможности для этого более ограничены.
- Участники обсуждают, что такие действия возможны из-за слабого контроля за качеством приложений в Google Play и других факторов.
- Также обсуждается, что такие действия могут быть препятствованы с помощью антивирусных приложений, но что они не могут предотвратить установку приложений, которые устанавливаются с помощью OTA-обновлений от оператора.
- Участники также обсуждают, что такие действия могут быть препятствованы с помощью MDM-решений, но что эти решения в основном предназначены для корпоративных пользователей и не доступны для обычных потребителей.
Why the open social web matters now
Бен Вердмюller, ветеран создания открытых социальных платформ (Elgg и Known) и сейчас технический директор в ProPublica, объясняет, почему открытый социальный веб важен именно сейчас. Он начал карьеру с построения Elgg — платформы, использовавшейся Greenpeace, Oxfam и движением против жесткой экономии в Испании, — всегда стремясь к федерации. Позже он создал Known для независимых блогеров и инвестировал в ранние проекты через Matter. Теперь, работая в некоммерческих новостных редакциях, он видит, как открытые сети наконец набирают популярность, несмотря на его "плохое чувство времени".
Вердмюller задает ключевой вопрос: почему decentralized или federated сети должны волновать людей? Он указывает на тревожные политические тенденции в США, где правительство становится все более авторитарным, и на ситуацию в Газе, где, по данным ООН, происходит геноцид. В таких условиях открытый социальный веб становится не просто технологической альтернативой, а необходимостью для сохранения свободы слова и организации сообществ вне контроля централизованных платформ.
Комментарии (117)
- Основной посыл: открытая социальная сеть не решит проблемы модерации, спама и верификации, если не предложит ценности для обычных пользователей.
- Практически все участники согласились, что без решения этих проблем невозможно привлечь и удержать пользователей.
- Некоторые подчеркнули, что даже в открытой сети нужны будут инструменты для выбора, что видеть и как взаимодействовать с контентом.
- Участники также обсудили, что отсутствие встроенного механизма монетизации может отталкивать разработчиков, а отсутствие удобства может отталкивать пользователей.
- В итоге обсуждение сошлось на том, что без решения этих проблем любая сеть останется нишевым проектом, а не массовым продуктом.
How to turn liquid glass into a solid interface
Apple представила новый интерфейс Liquid Glass с прозрачностью и эффектами размытия во всех своих операционных системах, но многим пользователям эти эффекты мешают или затрудняют чтение. В статье подробно описано, как контролировать эти эффекты для повышения удобства использования. Наиболее важной настройкой является "Системные настройки > Специальные возможности > Дисплей > Уменьшить прозрачность", которая делает строку меню непрозрачной, скрывает обои за виджетами, центром управления и доком, а также устраняет прозрачность в боковой панели системных настроек.
Для тех, кто часто делает скриншоты, эта функция особенно важна, так как обеспечивает единообразный фон. Автор отмечает, что настройки специальных возможностей для контроля Liquid Glass похожи в macOS, iOS, watchOS и tvOS, но их полезность различается в каждой системе. Статья содержит сравнительные скриншоты, демонстрирующие разницу между стандартными настройками и уменьшенной прозрачностью, что позволяет пользователям визуально оценить эффекты изменений.
Комментарии (124)
- Обсуждение в основном вращается вокруг критики нового дизайна "Liquid Glass" в iOS 26 и macOS Sequoia, который пользователи считают неудобным, непрактичным и вызывающим проблемы с читаемостью.
- Участники жалуются на снижение контрастности, нечитаемость текста и общее ухудшение пользовательского опыта, особенно в темной теме.
- Некоторые участники высказывают мнение, что Apple теряет фокус на удобстве пользователя в пользу визуальных эффектов.
- Обсуждение также затрагивает влияние этих изменений на продуктивность и удобство использования, а также то, как Apple обрабатывает обратную связь от сообщества.
- Участники также обсуждают, как обойти или отключить эти изменения, и обсуждают, будет ли Apple учитывать эту обратную связь в будущем.
Your data model is your destiny 🔥 Горячее
Основанная на блоковых элементах, а не на документах, архитектура Notion позволяет каждому элементу контента быть гибко перестраиваемым, вкладываемым и превращаемым в базы данных или другие структуры. Это превращает Notion из простого редактора в операционную систему для работы, где все интегрировано. В отличие от этого, Google Docs остается в рамках устаревшей модели "документ как файл", что ограничивает его возможности. Notion's модель данных делает его более универсальным и адаптируемым, позволяя ему масштабироваться как платформа, а не просто как инструмент.
Комментарии (91)
- Дискуссия вращается вокруг идеи, что победит не тот, кто предложит больше функций, а тот, кто заложит правильную модель данных, и что именно она определяет судьбу продукта.
- Участники обмениваются примерами: Slack vs. HipChat, Notion vs. Airtable, Google Docs vs. Microsoft Office, и обсуждают, как именно модель данных влияет на возможности и ограничения продукта.
- Обсуждается, что модель данных определяет, как продукт может развиваться и какие фичи можно будет добавлять, и какие нет.
- Участники также обсуждают, что выбор модели данных влияет на то, как продукт может масштабироваться и как он может эволюционировать.
- Также поднимается вопрос, что важнее: модель данных или умение ее реализовать, и как эти два фактора взаимодействуют.
America Is Sliding Toward Illiteracy 💬 Длинная дискуссия
—
Комментарии (214)
It seems to be reversing, at least among affluent kids. "Sold a story" had a huge impact on the educational establishment. My local district reintroduced phonics for the 2023-2024 school year, and reintroduced it in kindergarten. By the end of kindergarten, every single one of my