Мы живём в удивительное время. На наших глазах происходит революция — на
смену громоздким настольным компьютерам и тяжёлым ноутбукам приходят
мобильные устройства — планшеты и телефоны. Область применения этих
устройств постоянно растёт. Сейчас планшеты используются,
в основном, для работы с электронной почтой и новостными лентами, а так
же для общения в социальных сетях, чтения книг и просмотра видео.
Назначение телефонов примерно тоже, плюс звонки и смс. Вообще говоря,
грань между телефоном и планшетом весьма условна, и существует она
больше в сознании покупателей и в прайс-листах компьютерных магазинов. В
реальности же имеет место целый класс устройств, которые нельзя
однозначно отнести ни к планшетам, ни к телефонам. Например, PadFone или Eee Pad MeMO 171. Поэтому вместо «телефон» или «планшет» лучше говорить «мобильное устройство».
Вопрос, которым я хотел бы задаться — могут ли мобильные устройства
полностью заменить рабочие станции для IT-специалистов? Можно ли с
помощью одного только планшета разрабатывать сайты, сервисы и приложения
для этих же планшетов? И я уверенно отвечаю — да можно. И если не
сейчас, то в ближайшем времени такая возможность однозначно будет. В
этой статье я постараюсь обосновать свою точку зрения.
Но давайте, для начала, попробуем представить, какие плюсы дала бы нам замена настольных компьютеров на планшеты.
На столе (и под столом, конечно) стало бы больше свободного места. Об
огромном системном блоке можно было бы навсегда забыть. Монитор и
клавиатура — опционально, в зависимости от решаемых задач. Необходимость
в графических планшетах и дигитайзерах, скорее всего, тоже исчезнет.
Собственно, и само понятие «рабочее место» станет неактуальным — его
вытеснит «рабочее пространство». Ведь как часто приходится обсуждать
что-то с коллегой из соседней комнаты (далеко не всё общение можно
перенести в скайп или электронную почту!), затем возвращаться за свой
стол, вносить данные в компьютер и снова идти в соседнюю комнату —
обсуждать с тем же человеком следующий вопрос. С планшетом мы можем
просто сесть там, где нам нужно, и работать — было бы лишнее кресло.
Дальше — больше. Уже сейчас многие компании дают сотрудникам возможность
работать удалённо. Иногда удалённая работа рассматривается как
эпизодическая замена работе в офисе, в случае больничного или отпуска,
например. Но бывают организации, в которых 100% работы выполняется вне
офиса. В таком случае планшет с доступом в интернет открывает перед
сотрудником ещё большие горизонты, нежели ноутбук, благодаря меньшим
размерам и большей мобильности. Опять же, гораздо удобнее отправляться в
командировку с планшетом, чем с ноутбуком. Ведь самый тяжёлый
из представленных на рынке планшетов весит 0,96 кг при размере
273x180x17 мм (значительная часть веса приходится на док-станцию), а самый лёгкий ноутбук с аналогичным размером экрана — 1 кг при размере 262x180x22 мм.
Так что же нужно для того, чтобы сказка стала былью, то есть для
повсеместного перехода на мобильные устройства? Я вижу два момента — это
наличие софта и эргономика этих устройств.
Софт
Используемый софт полностью определяется задачами, которые решает
пользователь устройства, а класс решаемых задач — специализацией и
профессией пользователя. На Хабре очень много IT менеджеров,
разработчиков (программистов), дизайнеров, тестировщиков и руководителей
проектов. Конечно же, список профессий тех, кто задействован в сфере ИТ
гораздо шире, но я решил ограничится этим «шорт-листом», поскольку
задачи, решаемые ими, мне близки и знакомы.
Давайте же посмотрим, как представители этих славных профессий могут
выполнять свои повседневные обязанности, используя исключительно
планшеты на базе Android.
Общие для всех инструменты
Значительная часть инструментов используется всеми в IT без исключения.
Первый по популярности инструмент — это багтрекер. Все
современные баг-трекеры, Jira например, имеют веб-интерфейс, и с ними
отлично можно работать через стандартный браузер Android.
В качетсве файлового менеджера можно использовать Total Commander. Интерфейс мобильной версии практически не отличается от интерфейса версии под Windows.
В качестве мессенджера повсеместно используется Skype. Skype для Android существует уже давно, и у большинства пользователей проблем с ним не возникает.
В Android входит удобный и простой почтовый клиент Gmail. Если же у вас почта на другом сервере, поставьте K-9 Mail.
Для работы с документами можно использовать Google Disk либо OfficeSuite.
Менеджеры
Основной инструмент менеджера, кроме вышеперечисленных, это средство
управления проектами. MS Project под Android не портирован (к
сожалению?), но есть ряд программ, работающих с эти форматом. Например, Project Schedule
поддерживает импорт из файлов MPP и MSPDI-XML, а так же все основные
возможности MS Project — построение диаграмм Ганта, фильтрация задач по
ресурсам и исполнителям, группировка задач и т.п.
Разработчики
В большей части современных проектов можно выделить три группы
разработчиков — бек-енд, фронт-енд и мобильная разработка. Давайте
посмотрим, какие инструменты могут пригодиться программисту из каждой
группы, если он примет решение отказаться от настольного компьютера в
пользу планшета на Android.
Основное — это редактор кода. DroidEdit поддерживает подсветку синтаксиса для множества языков, включая Java, PHP, HTML, CSS и SQL. Для работы с системой контроля версий можно использовать SubDroid. Нельзя обойти вниманием универсальную и крайне полезную утилиту — Terminal IDE.
Она включает в себя javac, java, aapt, git, vim, bash и многое другое.
«Из коробки» нет консольного svn-клинета, но, надеюсь, это будет
исправлено в следующих версиях.
Backend
Для разработки бек-енда и веб-сервисов нехватает только сервера.
Конечно, можно каждый раз закачивать файлы на ftp (и я даже знаю людей,
которые так делают), но удобне было бы иметь сервер на своём собственном
мобильном устройстве. Да, на Android можно поднять полноценный сервер PHP + MySql. Для этого нужно поставить KSWeb.
Frontend
Для редактирования исходного кода web-старницы можно использовать WebMaster's HTML Editor.
Вместе с перечисленным выше программами, это необходимый минимум для
фронт-енд разработки. Но тут может возникнуть проблема с тестированием
на разных браузерах. Поэтому, по-хорошему, одним планшетом не обойтись —
нужны и другие устройства, с другим размером экрана.
Разумеется, frontend-разработчику придётся установить на свой планшет все имеющиеся браузеры:
Mobile
Для разработки Android-приложений непосредственно на Andorid-устройстве существует среда разработки AIDE — Android Java IDE. Кроме неё, наверняка пригодится утилита для просмотра и редактирования баз SQLite aSQLiteManager.
Если разработка подразумевает адаптацию под разные устройства (а это
наверняка так), пригодится утилита для сбора инофрмации об экране,
например ScreenInfo.
Дизайнеры
Существует Adobe Photoshop для планшетов. Для зарисовок можно использовать Sketch Book. Другой хороший графический редактор — Infinite Design.
Тестировщики
Специального софта для QA-специалистов не требуется, достаточно будет
перечисленного выше. В зависимости от того, что тестируется — веб-сайт
или мобильное приложение, должны быть установлены те же утилиты, что и
для фронт-енд, либо для мобильной разработки. Конечно, для проведения
полноценного тестирования не обойтись без большого количества разных
устройств. Но в случае несложного мобильного приложения или сайта может
быть достаточно одного планшета.
Железо
Все приведённые выше программы можно использовать на любом андроид-устройстве.
Сенсорный экран является отличным заменителем мыши в подавляющем
большинстве решаемых задач. У мобильных устройств есть только два
существенных недостатка — это небольшой размер экрана и отсутствие
физической клавиатуры. Согласитесь, писать код, тыкая в крошечный
сенсорный экран телефона и рассматривая текст в амбразуру между софтовой
клавиатурой и краем экрана, практически невозможно. Хотелось бы иметь
физическую клавиатуру для ввода текста и достаточно большой экран. Эти
проблемы успешно решены в серии «Трансформеров» от ASUS. В Transformer Pad TF300T
экран 10,1 дюйма с разрешением 1280x800 — с одной стороны достаточно
большой, чтобы работать с исходными текстами программы, а с другой —
достаточно маленький, чтобы устройство оставалось мобильным в прямом
смысле этого слова. При необходимости через порт Mini HDMI может быть
подключен внешний монитор. А благодаря док-станции на этом планшете
работать будет так же удобно, как и на ноутбуке.
Заключение
Сделать своим основным инструментом работы мобильное устройство возможно
уже сейчас, особенно если оно допускает подключение внешней клавиатуры
или док-станции. Но даже без неё на планшете можно полноценно работать
если у вас, скажем, нет доступа к стационарному компьютеру. Например,
если вы в отпуске, а на работе случился аврал, и вы — единственный, кто
может спасти ситуацию. Или если вы просто очень любите программировать, и
занимаетесь этим не только на работе, но и при каждой удобной
возможности. Как это делаю я :)
Давайте пофантазируем. Каким будет будущее мобильных устройств?
Мне лично кажется, что мобильное устройство станет единым средством
авторизации и хранения персональных данных. Приходя на работу, вы будете
подключать его к док-станции, и работать, как на десктопе. По дороге
домой мобильное устройство будет подключаться к бортовому компьютеру
автомобиля, и использоваться как навигатор и в качестве хранилища музыки
для автомагнитолы. В магазине можно будет оплачивать покупки с помощью мобильного телефона, а дома его можно подключить к телевизору вместо DVD-плеера.
Я уверен, совсем скоро можно будет сказать: «Десктоп не нужен — есть планшет!»
В части разработки долго смеялся.
Во-первых, сколь-либо развитая ИДЕ на десятидюймовом экране банально не поместится.
Во-вторых, пока что вычислительных ресурсов планшетов явно мало для
работы над крупными проектами. Веб-страничку поправить, конфиг — ещё
туда-сюда, но полчаса ждать, пока откомпилируется то, что на десктопе
собирается за 3-5 минут максимум — увольте.
В-третьих, при необходимости эмуляции чего угодно мы получаем печальную
картинку: аппаратной виртуализации в арм-процессорах есть далеко не
везде, бинарная эмуляция… не будем о грустном.
В-четвертых, арм-платформа пока что 32-битна на корню. Со всеми вытекающими последствиями.
В-пятых, ни один планшет не предлагает полноценных средств
кроссплатформенной разработки. На ПК/Маке можно разрабатывать ЛЮБЫЕ
приложения, под любую из существующих платформ.
И многое, многое другое — например, как сделать тултипы/смарттаги для тач-интерфейса?
Часть этих проблем решаема подключением клавиатуры/мыши/монитора, часть — нет.
О разработке на планшетах говорят ещё с появления первых таблеток под
виндой. И дальше «общих разговоров» пока что прогресс не идет. Несмотря
на все песни и пляски эльфов от веб-стартапов, пока не будет
предоставлено удобного решения для угрюмых гномов энтерпрайза, все это
останется цацками и пецками.
Не согласен только с 4ым пунктом, ARMv8 уже представлен, да и LPAE на
ARMv7 есть, т.е. адресовать больше чем 4гб он может (есс-но не
единовременно)
До массового распространения ARMv8 ещё по меньшей мере годков два-три
пройдет. Пока спроектируют реальные чипы, пока для этих чипов
корпорации типа Самсунга или Эппла адаптируют свой софт (а там не жук
чихнул работы).
А насчет LPAE — 64-битность интересна не только для увеличения объема адресуемой памяти, но и 64-битными регистрами.
_правильно_ написанный софт нужно будет только перекомпилировать (да,
мне доводилось портировать 32битные приложения на 64 бита, я знаю что
это такое :))
А какие плюсы дадут вам 64битные регистры? Это в x86 аргументы ф-ций
через стек ходили, т.к. регистров не хватало, в ARM-е даже на 32битах
регистров достаточно, аргументы передаются в регистрах
Быстрее можно будет длинные целые обрабатывать, которые будут помещаться в один регистр.
Ок, а много ли real life приложений long long использует? :)
Не так, чтобы сильно много, но блочные криптоалгоритмы могут неплохо
выиграть в производительности, а их можно найти в приличном количестве
real-life приложений.
|