РСС

Ношу шлем, тяжело дышу…

Меня зовут Антон Шувалов. Я работаю в Lazada. Кроме программирования я пишу музыку и иногда занимаюсь дизайном интерфейсов. Я есть в Twitter, Facebook, и на GitHub. Вы можете написать мне email.

Если вы задумали порадовать меня небольшим подарком (не может быть!) — вот список моих мещанских мечт.

Кэш и ненависть в iBooks

iBooks Author

Разрабатывая книгу в iBooks Author, я столкнулись с «необъяснимыми» проблемами с HTML5 AUDIO в написанных мной виджетах. Аудио то играло, то не играло, звук иногда пропадал после исправлений, которые не затрагивали ни JS, ни HTML, ни CSS ( например после замены дефисов на тире ). Долгим и, к сожалению, эмпирическим путем я установил корень проблемы — кириллица в имени файла книги и в имени файла виджета. Вроде бы все легко — переименовываем книгу, переименовываем виджет, профит! С файлом книги, естественно, проблем не возникло, а с виджетом все оказалось чуть-чуть сложнее.

WTF?! Cache!

Никто не может просто взять и переименовать виджет. iBooks Author имеет свой механизм кэширования. Упрощенная модель кэша работает примерно так

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

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

«Как рушатся комплексные системы», Ричард И. Кук
О фундаментальных проблемах больших запутанных систем
7 паттернов для рефакторинга JavaScript-приложений
Перевод отличной серии статей о проектировании и рефакторинге проектов
Музыка для работы
Мои плейлисты: теплый glitch, нежные девичьи голоса, интересная электроника и chillwave
Ссылколог
Коллекционирую полезные ссылки