Бекап фото-відео в «хмарах»

cloud

З самого початку захопленням фотографуванням (перша камера — 2006 рік) у мене почав накопичуватись великий архів фото-відео бо я прагнув зберегти усі фото, незалежно від того, використані вони якось чи ні.
Професійні фотографи одразу видаляють невдалі кадри, але мені було шкода це робити.
В 2011 році я з jpeg перейшов на RAW і ситуація з вільним місцем лише погіршилась.

Накращим (на мою думку) способом бекапу в «хмари» є спеціалізовані сервіси типу Amazon S3, Amazon Glacier та їх аналоги від Google та Microsoft. Існують програми (Arq, Duplicity і т.п.), які уміють працювати з цими сервісами та робити інкрементальні бекапи. Але подібне більше підходить для компаній та професіоналів, бізнес яких залежить від надійного зберігання результатів їх роботи. Для мене фотографування це хоббі а програмування це робота тому я пішов іншим шляхом.

Box
Навесні 2012 року компанія Box вирішила конкурувати з Dropbox в сегменті домашнього використання, тому почала збільшувати безкоштовні акаунти до 50Гб якщо залогінитись з Box for Android. Я не зміг пройти повз тому зареєстрував кілька десятків акаунтів (про запас 🙂 Оригінальна ідея була зберігати туди музику, але це виявилось не дуже практичним: у мене є дурна звичка час від часу міняти теґи тому треба було перезаливати Lossless треки.

Згодом у мене зʼявилася ідея зберігати туди усі свої фото-відео, які зазвичай дуже рідко змінюються (RAW файли — ніколи бо Lightroom пише зміни в xmp). Процес завантаження був простий — акаунт монтувався по WebDav і за допомогою Fork Lift файли синхронізувалися. Зазичай це відбувалося ночами і нерідко зʼявлялася помилка, яка зупиняла процес до ранку.

На той момент мій основний архів займав приблизно 300Гб. Швидкість інтернету «вгору» була 512 чи 768 Кб/с. Питання: як швидко мені вдалося завантажити 300Гб в таких умовах? Приблизно півроку, з травня по жовтень 🙂
В цьому мені дуже допомогла відмова від WebDav і використання Box API власним скриптом. Помилки завантаження звісно траплялися, але в цьому випадку скрипт просто переходив до наступного файлу. Тоді ж зʼявилася ідея порівнювати локальні та віддалені файли за вмістом а не розміром або датою модифікаці. Box API в цьому питанні дуже зручний — для кожного завантаженого файлу він підраховує SHA1 хеш.

Як же мені вдалося помістити 300Гб на 50Гб акаунт? Я завантажив їх на кілька акаунтів, приблизно по 40Гб на кожен. Оскільки я зберігаю фото в папки з поточною датою в назві (2016_08_21) то було не складно кожному з акаунтів прописати діапазон дат (прямо в тексті скрипта, поруч з API ключами 🙂

Dropbox
Наступним етапом була акція Space Race від Dropbox восени 2012 року. Тоді студенти могли ввести свою студентську поштову скриньку та прокачати свої Dropbox акаунти на 25 Гб на 2 роки. Де ж взяти стільки поштових скриньок в студентському домені? Дякуючи Сумському університету та їх сервісу з відкритою реєстрацією live.sumdu.edu.ua від Microsoft це виявилось не дуже складним завданням. Sumy State University піднявся досить високо в тому рейтингу (здається потрапив в десятку).

Постало питання, як перекинути 300Гб з Box на Dropbox. Робити це знову зі свого компʼютера не було жодного бажання. Тому я використав свій сервер на Linode, який качав файли з однієї «хмари» та заливав їх в іншу. Процес зайняв приблизно місяць: багато дрібних файлів (~ 100к) та не дуже оптимальний процес (скрипт дороблювався в процесі). Заодно я почав зберігати інформацію про локальні та віддалені файли в базу даних MySQL, це спростило їх синхронізацію (не треба було щоразу сканувати локальні папки, лише коли у них щось змінилося).

Також Dropbox використовується у мене для синхронізації фотографій з телефону. Вони завантажуються на основний акаунт, на компʼютері завжди працює Dropbox-клієнт, який завантажує їх локально. Спеціальний скрипт потім розкладає їх по папкам з датами (2016_08_21_n1).

Flickr
В травні 2013 року Yahoo вирішив розворушити свій фото-сервіс Flickr, тому безкоштовні акаунти отримали 1Тб (насправді лише 1 000 000 000 000 байтів, для програмістів це важливо). Це крок був схожий на появу Gmail з 1Гб в 2004 році. Але у Flickr були і обмеження — можна завантажувати лише фото (jpg, png, gif) до 200Мб та відео до 1Гб (при цьому програвалося лише перші 3 хвилини). Першим кроком було завантажити усі формати, які хоч якось підтримувались.

Основна проблема виникла з RAW (nef, cr2 і т.п.) — потрібно було конвертувати їх в jpeg перед завантаженням, втрачаючи можливість повноцінно редагувати пізніше. Але я знайшов технологію (формат?) RarJpeg коли з RAW файлу генерувався jpeg повного розміру, RAW файл запаковувався в rar архів і дописувався в кінець файлу jpeg. Завдяки особливостям форматів jpeg та rar результат був одночасно коректною картинкою та архівом. Але оскільки на той час створення архіву відбувалося на Raspberry Pi з ARM процесором та Linuxʼом то використання rar було складним (неможливим?). Також не дуже хотілося звʼязуватися з комерційною програмою. Зате 7-zip чудово працював (і досі працює). Ось вам приклад такого файлу (20Мб, архів з паролем).

Flickr API виявився дуже складною та нестабільною штукою. Можна було без проблем створити альбом і почати завантажувати в нього файли, але якщо через 10-20 хвилин запросити список усіх альбомів то його там могло не виявитися. Мій початковий скрипт в такому разі створював новий альбом і починав завантажувати файли знову. В результаті виникали дивні ситуації з дублями і т.п. Лише після кількох років боротьби та розробки мій скрипт став настільки розумним, що навчився уникати більшості проблем з Flickr API. Хоча дивні ситуації все одно зрідка трапляються. Досвід роботи з API, який я отримав в процесі — безцінний.

Саме з появою практично безлімітного Flickr у мене виникла ідея бекапити не лише основний архів (на той час вже десь 350Гб), але й невикористані RAW файли (на той момент — 600Гб). На Dropboxʼі вже не було достатньо місця, зате акція на Box ще тривала (правда лише для телефонів LG, яким є мій Nexus 4) і кількість моїх акаунтів зросло до 80 бо я наївно сподівався, що цього має вистачити на дуже довго :). Кількість акаунтів на Flickr теж не залишилась сталою 🙂

Onedrive
В лютому 2015 року Microsoft почав дуже активно просувати свій OneDrive і запустив акції з Dropbox та Bing: 100Гб на 1 рік та ще 100Гб на 2 роки. Як вже не складно здогадатися, одним акаунтом я не обмежився. Приблизно в цей час вони почали запускати нове OneDrive API, робота з яким була досить легкою (на відміну від старого SkyDrive API). Більше особливо про OneDrive мені сказати нічого — працює добре, проблем мінімум (великі файли доводиться завантажувати по 60Мб), але основне місце закінчиться в лютому 2017.

Mega
Сервіс від Kim Dotcom. З одного боку захищений та надає 50Гб без жодних акцій, з іншого — API складне, криптографія занадто важка для PHP тому доводиться використовувати консольні програми з пакету megatools. Зараз сервіс вже має інших власників (якісь китайські інвестори) тому подальша доля його невідома. Але я його поки підтримую бо особливих проблем він не викликає.

Amazon Drive
В травні 2015 року Amazon вирішив позмагатися з Dropbox, Onedrive, Google Drive і т.п. тому оновив свій Cloud Drive. У ньому зʼявилося 2 нові тарифні плани: Unlimited Everything за $5/місяць та Unlimited Photos за $1/місяць.
Мене зацікавив план Unlimited Photos тому я вирішив перевірити, які формати вважаються фотографіями. Виявилось, що усі, які я перевіряв, навіть nef, cr2, dng, tif, psd і т.п. Це став перший сервіс, за який я почав платити (правда не довго бо через 4 чи 5 місяців мені прийшов код для Unlimited Everything на рік).
Amazon Cloud Drive API виявилося дуже нестабільним. Я розумію, що сервіс привабливий за ціною, і що знайшлося купа бажаючих ним скористатися, але все ж Amazon міг щось придумати. Довелося дороблювати свій скрипт, щоб він нормально реагував на часту та тривалу недоступність сервісу. Зараз ситуація наче виправилась. Незважаючи на Unlimited Everything я бекаплю лише фото бо восени планую повернутися на Unlimited Photos.

Google Drive
Навесні 2016 Google почав акцію серед користувачів Local Guides, які залишали огляди щодо місць, де вони побували, відповідали на питання та завантажували фотографії. Якщо набрати 200 очків та досягти 4-го рівня то надавався 1Тб на 2 роки. Я не одразу почав писати відгуки та відповідати на питання, але, на щастя, встиг це зробити для кількох акаунтів, поки бонус не зменшили до 100Гб в червні. Оскільки я поки не вирішив, чи буду продовжувати використовувати Google Drive для бекапу фото-відео через 2 роки тому створив та «прокачав» додаткові акаунти на власному домені (а не основний).

Google це Google тому особливих проблем з API не було. Єдина суттєва особливість — папки та файли віртуальні, тому немає перевірки на унікальність імен (так само, як і у Flickr). Усі інші сервіси скажуть, що файл вже існує, або просто перезапишуть його. Тому довелося дописувати скрипт щоб випадково не створювати дублікати.
Додаткова зручність — я розшарив папки з додаткових акаунтів на основний тому маю зручний доступ в Google Drive на телефоні до усіх файлів.

Інші сервіси
Bitcasa восени 2015 року роздавала 25 Гб для розробників, щоб вони могли потестувати їх новий CloudFS сервіс. Я вирішив замінити ним Dropbox, який на той час вже забрав бонусне місце. Використавши свою звичку тактику я зміг розмістити там основний архів (500Гб). Але через деякий час (кілька місяців) мені написали з пропозицією обговорити співпрацю (почати платити). Я проігнорував листи а через півроку вони оголосили про згортання сервісу. Ну не дуже і хотілося 🙂
Mail.ru (прохання не кидати в мене гнилі помідори) запустив акцію для своєї «хмари» в кінці 2013 року. Я не збирався ним користуватися, але через жагу до дослідження нових сервісів все ж прокачав 2 акаунти до 1Тб.
В лютому 2016, коли Microsoft забрав перші 100Гб, я все ж вирішив надати Mail.ru шанс. Але завантажувати «голі» файли було дуже ризиковано. В хід пішло PGP шифрування та приховування імен файлів. Поки що це все живе, але думаю не на довго 🙂

size

Результат
У мене є система, яка забекапила майже 3Тб фото-відео-аудіо (мої та Олександри) паралельно на 7 сервісів (невикористані RAW та відео — лише на 6) та продовжує це робити.
Скрипт на Synology NAS завантажує файли на Box (так історично склалося), далі він запускає скрипт на моєму сервері на Linode, який переносить файли на Google Drive а потім і на інші «хмари» (Flickr, Amazon, Onedrive, Mega, Mail.ru). Все це працює в автоматичному режимі але процес я запускаю вручну коли фотографії вже розібрані та оброблені, щоб невикористані RAW не потрапили в основний архів.
Надійсність кожного з сервісів викликає питання (особливо через їх безкоштовність), але усі одразу вони навряд зникнуть. Також у мене є локальна копія, правда частину невикористаних RAW довелося видалити. Але колись я завантажу їх назад 🙂

Майбутнє
OneDrive забере бонусне місце за півроку, Google — за півтора. Я сподіваюсь, що файли просто стануть read-only. Місце на Box з часом закінчиться (нових акцій давно не було, існуючі акаунти неправильно рахують вільне місце тому деякі пусті вже переповнені). Думаю мають зʼявитися нові сервіси (з мого досвіду — мінімум раз на рік). Система спроектована з розрахунку на легку інтерграцію нових сервісів, зазвичай це справа кількох днів. З іншого боку вимкнути якийсь сервіс дуже просто, тому можливо з часом залишаться лише кілька найзручніших (для прикладу, Amazon та Flickr). Життя покаже 🙂

Поради
Бекапити усе, що може мати хоч якусь цінність. Я розумію, що мало хто буде морочитись так, як це роблю я. Але використати Flickr або Amazon Drive можна навіть без особливих навичок з програмування. Нічого так не тішить душу, коли знаєш, що усі файли є ще десь і локальний комп’ютер/NAS не містить нічого важливого в 1 екземплярі.

Домашня мережа та залізо

Я користуюсь компʼютерами вже майже 20 років але до минулого року в мене не виникало потреби в домашній мережі — компʼютер чи компʼютери просто підключались до інтернету через роутер.

Raspberry Pi

Першим з категорії «залізо домашньої мережі» в мене зʼявився Raspberry Pi. Це мікро-компʼютер за $35 (блок живлення та SD картка знайшлися в господарстві) на якому працює повноцінний Linux і для якого вже знайшлися сотні застосувань.
Я купив його без певної мети, але з часом йому все ж знайшлося застосування: збір даних про погоду через спеціальні датчики температури, вологості та тиску. Датчик вологості вмирав 2 рази, купувати 3й вже не було бажання.
Наступним застосуванням став бекап фотоархіву в хмари. Я налаштував його таким чином, щоб він перевіряв наявність мого ноутбука в мережі і в разі його відсутності — починав свою «брудну роботу». Оскільки я завжди закриваю ноутбук на ніч а в будні дні беру його з собою на роботу то в Raspberry Pi було повно часу для своєї «непомітної» роботи.

Vizio

Ще одне застосування зʼявилося після купівлі телевізора. Оскільки Raspberry Pi має HDMI порт а також існує непоганий дистрибʼютив XBMC (Raspbian) то він з легкістю перетворюється на медіа-центр. Достатньо було підключити зовнішній диск по USB. Приємним сюрпризом стало те, що і телевізор і Raspberry Pi підтримують протокол HDMI CEC (пульт від телевізора може керувати і зовнішніми пристроями).
І ось тут виникла проблема, яка привела до появи ще одної залізяки в домашній мережі.
Справа в тому, що Raspberry Pi через свою низьку ціну має обмежений набір портів та швидкодію. Його «вузьке місце» — USB, до якого підключені і Ethernet і зовнішній диск (8Гб SD картка використовувалася виключно під операційну систему).
Будь-яка операція з великими файлами локально або по мережі перетворювала багатозадачний (в теорії) компʼютер на однозадачний.

Отже зʼявилася потреба в швидкому та надійному мережевому диску.
На той момент в мене були 2 зовнішній диски — на 1Тб та 2Тб. 2Тб використовувався для бекапів Time Machine та фотоархіву. 1Тб використовувався як «останній рубіж», тобто сховище для даних, які наче і не дуже потрібні, але їх шкода видаляти. Розкрутивши коробки я там виявив звичайні 5″ SATA диски. Зʼявилася ідея знайти «коробку», куди можна було вставити ті диски і яка мала Ethernet.
Альтернативою було б купити щось типу WD My Cloud але там не було опції «коробки без дисків» а купувати нові диски я не мав бажання.
Оцінивши доступні альтернативи вибір зупинився на «коробках» на 2 диски від Synology та Buffalo. Перша подобалася усім, друга — ціною. Прочитавши відгуки обрав Synology DS213j і не прогадав 🙂

Synology

Власне інсталяція виявилася дуже простою, диски зі старих коробок переклав у нову. Складніше було зберегти всі дані, які були на зовнішніх дисках, особливо мігрувати бекапи Time Machine (для ініціалізації диска Synology його форматує). Але використовуючи всі наявні вдома накопичувачі все ж вийшло зробити цю складну операцію протягом доби.
Ще одним питанням був RAID. Якщо вже робити швидке та надійне сховище то без нього обійтися досить складно.
Але наявні в мене диски були різного розміру, відповідно у випадку з RAID 1 доступний обʼєм дорівнював би обʼєму меншого диска (1Тб + 2Тб = 1Тб RAID). В майбутньому я звісно планую поставити туди 4Тб + 4Тб але поки такі обʼєми мені не потрібні.
Тому я не став створювати RAID а написав скрипт, який щоночі синхронізує важливі дані між двома дисками. Резервувати бекапи Time Machine та інший подібних мотлох я не бачу сенсу. В майбутньому можна буде замінити 1Тб на новий (більший) диск, міґрувати дані з 2Тб диску в RAID а потім 2Тб диск теж замінити на більший.

Raspberry Pi працює з новою коробкою майже як рідний. Правда він не розуміє моменту, коли коробка засинає вночі, але це дрібна проблема — достатньо вийти і зайти в папку.
Бекапи Time Machine тепер робляться автоматично коли ноутбук знаходиться вдома. Раніше треба було підключати зовнішній диск по Firewire.
Виявилося, що і Synology і телевізор підтримують протокол DLNA але програма телевізора, яка відповідає за DLNA, не зручна і обмежена: схоже її робити для «галочки».
Телевізор хоча і SmartTV але «розумний» він лише на папері. Я не знаю, як справи у подібних телевізорів від Samsung або LG але у Vizio ця функція «шкутильгає». Є багато чого зручного та корисного (програми для Netflix та Hulu зроблені добре) а є відверті недоробки (програма для Amazon Instant Video не показує субтитри, програма для Youtube безбожно гальмує і т.п.).

Сhromecast

Плани на майбутнє — перейти на більш обʼємні диски та замінити Raspberry Pi як медіа-центр на щось інше. Дивлюся в бік Chromecast (нещодавно Synology став його підтримувати) але купувати не поспішаю — можливо влітку вийде нова версія, також він підтримую не всі сервіси, якими ми користуємось (для прикладу, відсутній Amazon). З альтернатив недавно зʼявився Roku Streaming Stick. Підтримує багато чого, в тому числі Amazon але я не впевнений, як він буде працювати з Synology.

Roku

Ще до заліза домашньої мережі можна віднести мережевий принтер та Nintendo Wii але в них, як на мене, немає нічого цікавого.

Враження про Nexus 4

В минулому дописі я вже описував, з якими труднощами зіштовхнувся, замовляючи Nexus 4. Але він у мене вже майже 3 тижні тому пора описувати свої враження.

Перше враження було цілком очікуване — ну і лопата. В порівнянні з моїм старим T-Mobile G1 він значно ширший та довший, хоча і значно тонший.
Але минуло кілька днів і великі розміри перестали відчуватися, в руці він лежить добре.
Я для нього купив спеціальний кожух і тепер класти його на стіл чи ще куди стало не так страшно (бо ж ззаду в нього таке саме скло, як і спереду).

Враження про швидкодію позитивні.
Я не знайшов програму чи гру, яка б на ньому гальмувала. Оперативної памʼяті 2Гб і я ще не помічав, щоб використовувалося більше за 1Гб. Побачимо, що буде з Android 5.0 чи 6.0 але запас швидкодії є на рік чи два.

З внутрішньою памʼяттю не все так добре. Підтримки SD карток немає, є лише моделі на 8Гб або 16Гб (я взяв 16Гб модель).
Розпоряджатися можна 12.9Гб з яких програмами, подкастами і т.п. я вже використав 3.5Гб.
Решту місця можна досить легко забити музикою з Google Music або прямо з компʼютера.
Про завантаження на нього фільмів в 720p я мовчу 🙂
Схоже Google хоче, щоб користувачі максимально використовували їх «хмари».
Але тут постає питання з шириною мобільного каналу та трафіком.

Мій новий та старий телефони:
nexus-4_vs_t-mobile-g1

З безпровідними функціями все добре, підтримуються мережі GSM, UMTS та HSPA+ (42 Мб/с). Також в інженерному меню можна активувати LTE але підтримуються лише мережі 1700 МГц. На таких частотах працюють LTE мережі в кількох операторів Канади, в оператора AT&T та планується в оператора T-Mobile USA в середині наступного року.
Якщо говорити про реальні швидкості то я спостерігав швидкості від 6 Мб/с до 18Мб/с down та від 1Мб/с до 3.5Мб/с up.
В мене в хаті зараз видає 8.6Мб/с down та 2.3Мб/с up:

2012-12-24_12.59.43

З батареєю не все так добре. На жаль, її не можна змінити власноруч (так само, як на iPhone) і тримає вона приблизно добу при досить активному використанні (соціальні мережі, новини, ігри, чат, пошта і тп). Треба буде провести експеримент скільки вона проживе якщо вимкнути інтернет та не гратися в ігри але думаю це буде максимум 2-3 доби (судячи зі швидкості розрядження вночі). Якщо вірити внутрішній статистиці то найбільше батарею саджає екран, потім йде ОС і на третьому місці модем.
Заряджається він від будь-якого microUSB кабелю але найшвидше він це робить з рідним кабелем та зарядкою — біля 4х годин.
З появою Nexus 4 всі мої miniUSB кабелі пішли на заслужений відпочинок.
Google обіцяв випустити безпровідну зарядку для нього але поки її немає в продажу.

До якості збірки та комплектуючих претензій немає. Екран якісний та яскравий, 1280 x 768 пікселів та 320 ppi.
На жаль, ще не всі ігри та програми адаптовані до такої роздільної здатності, тому нерідко можна бачити розмиту графіку.

Камера середня, 8Мп, вдень знімає добре, вночі без спалаху погано. В принципі про неї особливо немає сенсу говорити, до якості «дзеркалок» телефонам ще дуже далеко, поки вони знаходяться на рівні «мильниць».

Не дуже подобається мінімум апаратних кнопок. Звісно після T-Mobile G1 не зручно друкувати на екранній клавіатурі але я не про це. Немає апаратних кнопок щоб зняти та покласти трубку та щоб зробити фото. Відсутності окремої кнопки для фото мені здається досить серйозним недоліком, тицяти в екран для цього не дуже зручно.

Окремо хочеться сказати про Android 4.2.
Порівнювати я можу лише з неофіційним Android 2.2 на T-Mobile G1 але прогрес помітний на око: інтерфейси промальовані добре, системні налаштування розкладені більш логічно, зʼявилися додаткові функції типу роздавання мобільного інтернету через Wi-Fi (працює навіть без купівлі спеціального плану в оператора), контроль за використанням мобільного трафіку та за витратами батареї, вдосконалена панель нотіфікацій та швидких налаштувань. Я трохи клацав iOS і можу сказати, що Android рухається в правильному напрямку без прямого копіювання «винаходів» Apple.
Я поки не оцінив Google Now, він мені показує лише погоду та зрідка дні народжень. На роботу я не їжджу а спортивні команди, які мене цікавлять, він не має в базі (це я про українські клуби).
Набирати текст диктуванням працює добре (навіть з моїм Ukrainian English) але я досить рідко щось набираю англійською.
Українською він поки не розуміє і в системі немає українських словників для автокорекції набору тексту на віртуальній клавіатурі (як це він робить для англомовного тексту). Але сама віртуальна клавіатура досить непогано зроблена для української мови (ще б правильний апостроф, лапки, тире 🙂

З новим телефоном я став активно використовувати Dropbox. Він уміє автоматично завантажувати зроблені фото та скріншоти до себе в «хмару», а в мене на компʼютері спеціальний скрипт розкладає їх по папкам за датами. Те саме уміють робити й інші сервіси (Facebook, Box та Google+) але Dropbox це робить найбільш зручно для мене.
Також 1Password уміє синхронізувати свою базу через Dropbox. Єдиний мінус 1Password на Android — на телефоні не можна створювати нові паролі або модифікувати існуючі.

Великий плюс Android це можливість встановлювати програми з різних джерел. Я не кажу про піратство (я таким не займаюсь), я про Amazon App Store та Humble Indie Bundle. Майже всі ігри, в які я зараз граюсь, встановлені не з Play Store.

Отримати root та встановити альтернативну прошивку можна досить легко але я не буду цього робити поки не зʼявиться стабільна підтримка Nexus 4 в CyanogenMod. В офіційній прошивці мене поки все влаштовує.

Загалом я радий, що купив собі новий телефон, на мою думку це найкращий телефон, що існує зараз на Android і має розміри до 5″.
Навіть якби він коштував не ~ $400 (з доставкою та податками) а ~ $650 (як найдешевший iPhone 5) то я все одно його б купив би.

Епопея з Nexus 4

Google уміє робити гарні онлайн сервіси — пошук, пошта, календар, документи і т.п.
Так, інколи у них бувають проблеми, але зазвичай їх швидко вирішують.
Google (поки) не вміє продавати фізичні товари – початок продажу Nexus 4 обернувся епічним фейлом.

В минулому дописі я писав про те, що продаж розпочнеться 13-го листопада.
Трохи раніше в той день Nexus 4 почали продавати в Австралії та Європі. І скрізь користувачі зіштовхнулися з неможливістю зробити замовлення через постійні помилки Google Wallet. Але не зважаючи на проблеми телефони закінчувалися за 30-40 хвилин і Google вивішував повідомлення «Sold Out».

Мене більш цікавив стан справ в США тому я тусувався на форумі xda-developers і там спочатку всі думали на 12-ту ночі (початок нової доби) за Тихоокеанським часом. Але о 12-й нічого не сталося. Я спокійно ліг стати поставивши будильник на 7-му ранку.

Я прокидався о 7-й та 8-й але тоді ще нічого не продавалося. О 8:10 я знову ліг спати, о 8:50 прокинувся але 16Гб модель на той момент вже розібрали. Та навіть якби я почав замовляти о 8:30 — не факт, що в мене щось вийшло — багато користувачів клікали півгодини але так нічого і не замовили. Інші були більш успішні — замість 1-2 телефонів назамовляли їх десяток 🙂
За кілька тижнів до цього на сторінці замовлення Nexus 4 зʼявилася спеціальна форма, заповнивши яку Google обіцяв повідомити про старт продажів. Звісно ніяких листів 13-го листопада я не отримав (як і решта).
Чому Google не зробив попереднє замовлення (як це роблять всі нормальні онлайн магазини) або принаймні не додав ще серверів для американського запуску (зважаючи на досвід в Австралії та Британії) — невідомо.

27-го листопада вночі Google прислав радісного листа про те, що продаж почнеться о 12й дня:

В цей день ситуація повторилася 1 в 1 як 13-го листопада.
Спочатку телефон неможливо було додати в кошик, після натискання кнопки видавався або пустий кошик або ось така помилка:

Якщо ж додати телефон в кошик все ж вдавалося — після натискання кнопки «PROCEED» зʼявлялося ось таке повідомлення:

Оновлюєш сторінку — і все, кошик пустий, починай все з самого початку. При цьому час від часу взагалі зʼявлялося повідомлення «SOLD OUT».

Десь за годину зʼявилося ось таке цікаве повідомлення, але воно трималося лише 10-15 хвилин:

Нарешті приблизно о 3й дня ситуація стабілізувалась — купити все одно не виходило але принаймні телефон перестав зникати з кошика.
Для замовлення потрібно було натиснути відповідну кнопку в той момент, коли Google Wallet відповідав на запити.
Декому щастило це зробити звичайним клацанням, дехто використовував нехитрий спосіб з виделкою в клавіатурі, яка затискає Enter (фото з форуму xda-developers):

Я ж знайшов JS код, що робить те саме, але віртуально:

var a = function(){ document.querySelector('.buy-button-price.goog-inline-block').click(); window.console.log('click'); setTimeout(a,150);}; a();

Запустивши його в консолі браузера я за 10-15 секунд побачив вікно підтвердження замовлення і нарешті замовив телефон:

На жаль, я не встиг замовити телефон, коли час очікування був 1-2 тижні але 2-3 тижні як виявилося теж не погано. До вечора час очікування зріс дуже сильно:

Google відправив мій телефон 5-го грудня і я отримав його в обід 7-го грудня бо єдиний варіант доставки був UPS 2-nd Day Air за $14.

Про враження я детальніше напишу в окремому дописі за кілька тижнів, зараз лише найголовніше.
Якщо порівнювати його з T-Mobile G1 (моїм єдиним телефоном за останні 4 роки) то він здається занадто великими і тонким.
Як на мене, вони б спокійно могли зробити його в 1.5 рази товщим і поставити туди велику батарею (заповітна мрія кожного користувача Android). Але зараз в тренді надтонкі телефони…
За ці 3 дні я експлатував його в дуже екстремальному режимі і на світловий день батареї не вистачало. Думаю при нормальному користуванні він буде спокійно жити з ранку до вечора.
Також мені дуже не вистачає апаратної клавіатури мого G1. Але я вже майже звик до віртуальної клавіатури.

Загалом телефон мені сподобався, я планую користуватися ним 2-3 роки.

Nexus 4 та мобільний звʼязок в США

4 роки тому я купив свій перший телефон на Android – T-Mobile G1.
З того часу багато чого змінилося в мобільній сфері і ось вже настала пора купувати новий телефон.
Після довгих роздумів я обрав Nexus 4 і в цьому дописі я спробую пояснити чому.

Минулої осені я серйозно думав про перехід до «ворожого табору», тобто купити iPhone. Мене майже влаштовує залізо, програми для iOS значно кращої якості за програми для Android і т.п. (будь-який фанат iPhone наведе ще з десяток аргументів).
Зупинило мене те, що вийшов iPhone 4S а не iPhone 5 а також повне несприйняття мобільної екосистеми Apple. Мені не подобається шлях, яким рухається Apple в мобільній сфері: App Store з драконівськими обмеженнями для розробників, iTunes Store, де неможливо купити музику (лише отримати обмежену ліцензію на особисте прослуховування), не подобаються сервіси iCloud і т.п. (будь-який фанат Android наведе ще з десяток аргументів).
Так, я користувач OS X, але політика Apple щодо настільних компʼютерів мене в даний момент влаштовує. Якщо вона зміниться — можливо мені доведеться змінити ОС.

Звісно, крім Android та iOS ще є інші мобільні ОС але я їх серйозно не розглядаю (кому потрібен Windows Phone?).

Вирішивши залишитися на Android я почав обирати конкретну модель. Минулої осені вийшов Galaxy Nexus і я вже був готовий його купити одразу після анонсу. Але Google вирішив спочатку запустити його в CDMA оператора Verizon що мене зовсім не влаштовувало (я хотів використовувати свій телефон не лише в США). Потім я поїхав в Україну і питання купівлі нового телефону відклалося мінімум на півроку. Влітку вийшов Samsung Galaxy S III і я навіть збирався його купувати в британському інтернет-магазині (бо в штатах він продавався лише з 2х річним контрактом). Але спробувавши його в місцевому магазині і дізнавшись про вихід нового Nexus восени я вирішив ще почекати.

Трохи про мобільних операторів в США (для загального розвитку). Великих операторів тут 4: Verizon (CDMA), AT&T (GSM), Sprint (CDMA) та T-Mobile (GSM). Перші 3 оператори також мають LTE мережі.

Досить поширеної практикою є продаж операторами субсидованих телефонів разом з 2х річним контрактом.
Поясню це на прикладі iPhone 5 та AT&T:
— телефон коштує $200 (16Гб модель), він буде залоченим під AT&T і в разі, якщо ви вирішите розірвати контракт, ви маєте заплатити Early Termination Fee ($325 мінус $10 за кожен місяць оплаченого сервісу).
— мінімальний тарифний план коштує $40 за 450 хвилин та $20 за 300Мб трафіку (або $30 за 3Гб, $50 за 5Гб)
Мінімальна вартість за 2 роки (iPhone 5 + сервіс) — $1640.
Щоб ви не думали, що це лише для iPhone — ціна Samsung Galaxy S III або LG Optimus G з 2х річним контрактом така сама.

AT&T також має припейд. Тарифи:
— розблокований iPhone 5 (16Гб модель) буде коштувати $650. iPhone офіційно не працює з припейдом AT&T але є спосіб це обійти.
— розблоковані Samsung Galaxy S III та LG Optimus G коштують $550.
— найпростіший план це 10 центів/хвилина, 1 цент за 5Кб трафіку але він не для смартфонів.
— 250 хвилин в місяць за $25, 50Мб за $5 (не серйозно), $15 за 200Мб та 1Гб за $25 (інших варіантів трафіку немає).
Мінімальна вартість за 2 роки (iPhone 5 + сервіс) — $1610 (або $1370 з 50Мб трафіку щомісяця).

В мене немає претензій до ціни сервісу (мобільні технології загалом недешева штука), в мене серйозні претензії до відсутності вибору. «Хочеш смартфон? Їж той сервіс, який ми тобі даємо, а якщо тобі мало трафіку — плати ще».
Можливо я якийсь неправильний користувач смартфонів але в місяць я використовую максимум 30 хвилин розмов (щоб вирішити якісь термінові питання). Для решти у мене є Google Voice та Skype і я не розумію, чому я маю платити за купу мобільних хвилин, якими просто не користуюсь. А от трафіку мені потрібно багато 🙂
Саме через це я використовую припейд від T-Mobile за $30: 100 хвилин розмов та 5Гб трафіку.
Вартість сервісу за 2 роки — $720.

Google намагається поламати цю порочну практику субсидованих телефонів тому і запускає Nexus 4 за досить низькою ціною ($300 або $350) без контракту. Характеристики можна подивитися в Google Play.
Недоліки такого підходу — 8Гб або 16Гб внутрішньої памʼяті, відсутність microSD та відсутність підтримки мереж LTE.

На мою думку проблеми з внутрішньою памʼяттю виникли не лише через низьку ціну але й тому, що Google намагається перевести користувачів в свої «хмари» для зберігання великих файлів. Мене таких підхід в принципі влаштовує, моя музика вже лежить в Google Music а 16Гб буде достатньо щоб тимчасового зберегти її частину на телефоні.

Щодо відсутності підтримки мереж LTE — тут проблема складніша:
— Verizon та Sprint це CDMA оператори з усіма наслідками цієї технології (в США не використовується аналог SIM карт для CDMA мереж). Виробники телефонів не можуть отримати доступ до цих мереж без благословіння операторів, які хочуть продавати телефони від себе додавши в систему купу операторського мотлоху який нормальним людям не потрібен, який неможливо просто так вилучити і який гальмує оновлення ОС — оновлення Galaxy Nexus від Verizon виходили з 2х-3х місячною затримкою. Звісно ці вимоги зовсім не влаштовують Google. Лише Apple може ламати через коліно цих операторів і продавати iPhone «чистим» бо без iPhone ці оператори втратять значну кількість користувачів.
— AT&T це GSM оператор, який дозволяє в своїй мережі будь-які сумісні телефони, але його LTE мережа є досить унікальною в світі з частотами 700MHz та 1700MHz тому Google вирішив поки не робити окрему версію Nexus 4 спеціально для AT&T (та ще кількох канадських операторів). В Європі зовсім інші частоти LTE мереж: 1800MHz, 2600MHz і т.п. Apple випускає дві GSM версії iPhone 5 — для Америки та решти світу.
— T-Mobile поки лише планує запускати LTE мережу наступного року.

Підсумовуючи вищесказане хочу сказати, що я підтримую Google та T-Mobile у їх боротьбі з неправильною (на мою думку) системою субсидованих телефонів та незбалансованих тарифів.
Швидкості в HSPA+ 42Мб/с мережі мають бути цілком достатніми для мене а от з деякими недоліками Nexus 4 доведеться миритися, але після T-Mobile G1 мені вже нічого не страшно 🙂

Nexus 4 почне продаватися на Google Play 13-го листопада і я перший в черзі на 16Гб модель. Шкода немає попереднього замовлення з доставкою в день початку продажу (як це робить Apple). Док станцію з можливістю безпровідної зарядки напевне теж буду брати.

Додано 13.11.2012: Продаж Nexus 4 в США розпочався сьогодні приблизно о 8:30 ранку за Тихоокеанським часом. Я прокидався о 7:00 та 8:00 але тоді ще нічого не продавалося. О 8:10 я знову ліг спати, о 8:50 прокинувся але 16Гб модель вже розібрали. Брати 8Гб модель не бачу сенсу тому буду чекати наступного розпродажу. Висновок — треба менше спати в день старту продажів подібних девайсів 🙂