Статьи

Разработка мобильного интернета с Мэттом Эвансом: Стенограмма

Этим утром я увидел, как я провожу очередную серию чатов Talk with the Experts в чате Learnable . Если вы не проверили это в последнее время, убедитесь, что вы делаете. Он был немного обновлен и выглядит блестящим и новым.

Сегодня предметом была мобильная веб-разработка, а экспертом был Мэтт Эванс из Wave Digital . На сессии было много новых лиц, и вопросы были интересными. Мы обсуждали все, от платформ до ошибок новичков. Если вы когда-либо задумывались о написании (или вводе в эксплуатацию) мобильного приложения, убедитесь, что вы прочитали о том, что произошло.

Если вы пропустили сессию сегодня, потому что не знали об этом, вы можете подписаться на уведомления по электронной почте о будущих сессиях здесь . На следующей неделе мы поговорим о том, что делать, если у вас есть приложение (хотя и не обязательно мобильное). Каков наилучший подход к поддержке, чтобы не тратить слишком много драгоценного времени на разработку? Майкл де Вильдт рассказывает о том, как поддержать ваше приложение в 13:30 PDT в среду, 30 октября .

А теперь, если вы хотите точно увидеть, что произошло сегодня утром, вот полная стенограмма для вашего удовольствия от чтения:

[20:29] <HAWK> Хорошо, Мэтт, хочешь рассказать нам о том, что ты делаешь?
[20:29] <Matt> Утро всем. Меня зовут Мэтт, разработчик мобильных приложений, который сейчас живет в Мельбурне, родом из Новой Зеландии
[20:30] <Matt> В настоящее время работаю над различными сетевыми и мобильными проектами, поэтому с нетерпением ждем возможности ответить на некоторые ваши вопросы.
[20:30] <HAWK> Если кто-то захочет сначала задать вопрос, вы будете полностью привлечены Мэттом. 😉
[20:30] <Matt> 🙂
[20:31] <Warrington> Как учитель, я смотрю на использование разработки игр для помощи в обучении программированию
[20:31] <PaulE> Какая платформа для мобильной разработки самая популярная?
[20:31] <Warrington> Мне было интересно, какое программное обеспечение вы бы порекомендовали
[20:31] <Уоррингтон> учить студентов?
[20:32] <HAWK> Великолепные вопросы. Я начну ставить их в очередь за Мэтта, чтобы мы ничего не пропустили.
[20:33] <PaulE> Должен ли я писать приложения для Apple или Android?
[20:33] <adamqureshi> яблоко, конечно
[20:33] <Warrington> Кроме того, какое программное обеспечение вы используете для создания спрайтов?
[20:33] <Мэтт> Уоррингтон — Нативная разработка игр? Я бы порекомендовал заняться разработкой для iOS (XCode). http://www.cocos2d-iphone.org/ Это популярный игровой движок, с которого можно начать.
[20:33] <PaulE> Насколько сложно писать для Apple и Android?
[20:33] <adamqureshi> как насчет этого нового движка HTML5 3D
[20:33] <adamqureshi> сосредоточиться на 1
[20:33] <PaulE> Лучше всего придерживаться только одной платформы?
[20:33] <adamqureshi> почему бы не сделать мобильное веб-приложение / проверить его, а затем перейти на нативный
[20:33] <adamqureshi> если хочешь, можешь сделать мой
[20:34] <adamqureshi> у меня есть прототип
[20:34] <adamqureshi> HTML / CSS
[20:34] <PaulE> Может, Мэтт ответит на вопросы? 😉
[20:34] <Matt> PaulE — Самая популярная мобильная платформа… Я бы сказал, iOS, но я немного предвзят.
[20:34] <HAWK> Сложно ли писать для обоих?
[20:35] <MalCurtis> «популярный» интересный показатель. Самые продаваемые = Android, наиболее используемые и наиболее занятые = iOS
[20:35] <Matt> PaulE У вас есть несколько вариантов, когда вы пишете для обоих.
[20:35] <PaulE> Мне тоже нравится IOS, но я думаю, что Android — более крупный рынок 🙂
[20:35] <adamqureshi> я знаю, ты не спрашивал, но почему бы тебе не попробовать http://famo.us/
[20:35] <MalCurtis> большой рынок! = Прибыльный рынок
[20:35] <Matt> 1) Разрабатывать оба нативно (две отдельные сборки)
[20:36] <adamqureshi> почему бы не взглянуть на доказательства. тогда решите исходя из фактов?
[20:36] <PaulE> Я думал, что это QA с Мэттом?
[20:36] <Matt> 2) Используйте фреймворк, такой как PhoneGap ( http://phonegap.com/)
[20:36] <Warrington> Есть мысли об использовании Gamemaker?
[20:36] <adamqureshi> Титаниам
[20:36] <HAWK> Это PaulE — хотя я призываю людей общаться, если они могут конструктивно помогать друг другу
[20:37] <rokio> Используете ли вы адаптивный веб-дизайн при создании мобильных приложений или поскольку вы разрабатываете специально для мобильных устройств, в этом нет необходимости?
[20:37] <Matt> 3) Сверните свое собственное решение в стиле Hyrbid (аналогично PhoneGap), но у вас будет больше контроля
[20:37] <adamqureshi> мобильный кулак конечно
[20:37] <PaulE> Комментарии не являются конструктивными. Я бы предпочел ввод Matts 🙂
[20:37] <HAWK> Честный звонок. Немного потише, пожалуйста, адамкуреши 🙂
[20:38] <adamqureshi> извините. Мой энтузиазм 😉
[20:38] <adamqureshi> кто такой Мэтт? лол
[20:38] <PaulE> Все в порядке, адамкуреши;)
[20:38] <Matt> @rokio Мы здесь используем RWD. Это зависит от проекта. Мы часто встречаем клиентов, которым нужны приложения для обеих платформ (iOS + Android), но они не хотят вкладывать большие средства в две отдельные сборки.
[20:39] <PaulE> Хорошая мысль
[20:39] <Matt> rokio Почти вся веб-работа, которую мы здесь проводим, всегда будет иметь мобильный компонент, обычно отзывчивый.
[20:39] <PaulE> Это объясняет то, что многие компании запускают одну или другую, а затем на более позднем этапе работают с другой…
[20:40] <Matt> Это верно. Начать с одной платформы для «тестирования воды» — это хороший способ сделать это.
[20:40] <adamqureshi> Я делаю веб-приложение и мобильное приложение, и только после того, как я проверю, я стану нативным, мой опыт ..
[20:40] <Jen> Как насчет веб-приложений html5
[20:40] <adamqureshi> Я всегда проверяю идею и вижу, стоит ли ее делать
[20:41] <adamqureshi> У меня есть идея мин.
[20:41] <MalCurtis> Является ли adamqureshi бот-словом «худой стартап»?
[20:41] <adamqureshi> нет.
[20:41] <HAWK> Хех
[20:41] <adamqureshi> LOL
[20:41] <Speed> Вы когда-нибудь создавали приложения для iOS, которые общаются с базой данных, не расположенной на самом устройстве? Вы бы использовали облачную базу данных для чего-то подобного?
[20:41] <Adnan> лол
[20:41] <adamqureshi> модное слово, есть ли приложение для этого
[20:41] <Adnan> У Speed ​​есть хороший вопрос
[20:41] <Matt> Jen — Хороший вопрос! Существует множество мнений о приложениях HTML5 …
[20:42] <Adnan> +1
[20:42] <PaulE> нравится
[20:43] <Matt> Некоторые поощряют подход «писать один раз» в приложениях в стиле HTML5, другие предпочитают контроль и лучший опыт, которого они могут достичь с помощью встроенных сборок.
[20:43] <adamqureshi> скорость — король с родным, как вы очень хорошо знаете ..
[20:43] <adamqureshi> сеть догоняет.
[20:43] <adamqureshi> камера / GPS …
[20:43] <Matt> Скорость — Конечно, есть. Ваше приложение захочет общаться с базой данных через API
[20:44] <Speed> Какие-нибудь рекомендации по размещению облачных баз данных?
[20:44] <Matt> Speed ​​Если у вас есть несколько конечных точек, с которыми приложение должно обмениваться данными, я бы рекомендовал разработать промежуточный уровень, который может контролировать поток данных между устройством и серверной частью.
[20:45] <Matt> Speed ​​- я бы рекомендовал Amazons RDS — http://aws.amazon.com/rds/
[20:45] <Speed> Да, я так думал. Мы также думаем о создании среднего уровня для управления выставлением счетов.
[20:45] <Jen>, поэтому с html5 мы не можем использовать некоторые нативные функции, но это, похоже, меняет тенденцию к увеличению количества мобильных функций на ноутбуках и планшетах … даже сейчас у нас есть планшеты с сенсорным экраном, настольные компьютеры старая школа
[20:46] <Jen> Я просто думаю, что через год не будет особой ценности в нативных приложениях, мы сможем сделать все через html5?
[20:46] <Speed> Спасибо, Мэтт. Я посмотрю в Amazon RDS.
[20:46] <adamqureshi> Мэтт, ты использовал PARSE?
[20:46] <Adnan> как насчет приложения Google Engine Мэтта
[20:47] <adamqureshi> для серверной архитектуры?
[20:48] <Matt> Джен, это верно. Сеть движется в правильном направлении. Некоторые утверждают, что приложения HTML5 предоставляют пользователям ухудшенные возможности (скорость и т. Д.). Как упомянуто выше, я полагаю, что это сводится к решению, лучше всего сделанному на основе проекта.
[20:48] <qoonik> Какие настройки вы предлагаете с PhoneGap (JQM или что-то еще). Сейчас я использую магистраль + JQM.
[20:48] <HAWK> К вашему сведению, я в очереди на все вопросы, так что не беспокойтесь о том, что что-то пропустят. Я также опубликую полную стенограмму в SitePoint позже сегодня и отправлю ее по электронной почте любому, кто находится в списке рассылки TWTE.
[20:49] <qnoox> Прежде всего, я люблю тебя, ястреб, ты лучший! но на заметку, мой вопрос — матовый, есть ли у вас какие-либо подсказки и приемы, когда речь заходит о внешнем виде, скажем, приложение для Android, я считаю, что код легко купить, сделать его лучше, сложнее.
[20:49] <Matt> adamqureshi — я не использовал PARSE. Выглядит изящно, придется проверить это!
[20:49] <adamqureshi> Мэтт: хорошо. но я думаю, что они были приобретены FB 😉
[20:49] <HAWK> Ха! Спасибо qnoox.
[20:50] <adamqureshi> также есть новое решение, которое позволяет вам создать систему обмена сообщениями под названием «слой»
[20:50] <adamqureshi> для нативных приложений для iOS
[20:50] <Matt> @qoonik Я думаю, что вы на правильном пути, используя Backbone поверх JQM. Лично я никогда не был фанатом JQM, чувствую себя довольно неуклюже.
[20:50] <adamqureshi> 10 строк кода
[20:51] <chughgaurav> для разработки веб-приложения для мобильных устройств и настольных компьютеров используется адаптивный дизайн, который, я думаю, занимает много трафика на мобильных устройствах. Что можно сделать в таком сценарии? Угловой Js?
[20:51] <qoonik> Мэтт, так что посоветуете использовать вместо JQM?
[20:52] <adamqureshi> Мэтт, вы пробовали http://famo.us/ в качестве движка славы для HTML 5
[20:52] <adamqureshi> игровой движок. лол
[20:52] <MalCurtis> chughgaurav angular js не решит ваши проблемы с пропускной способностью. RWD также не собирается исправлять эти проблемы. Если у вас есть большой целевой рынок для мобильных устройств, выделенные мобильные сайты могут быть полезны
[20:52] <Matt> qnoox — Когда дело доходит до внешнего вида приложений HTML5, я считаю, что хитрость заключается не в том, чтобы сделать их специфичными для платформы. Слишком много раз вы найдете приложения для Android, с iOS-краской. Пользователи ожидают приложение, разработанное для их устройства.
[20:52] <adamqureshi> Мэтт рекомендует использовать «родные элементы управления» для приложений ios? сэкономить время / стоимость?
[20:53] <chughgaurav> да, целевая аудитория большая, какая платформа будет хорошей для разработки мобильного веб-приложения, какие рекомендации?
[20:53] <qnoox> спасибо, Мэтт!
[20:54] <Matt> chughgaurav — Есть много сообщений в блоге в дикой природе именно на эту тему. С RWD можно провести оптимизацию, но, как сказал Мал, иногда выделенный сайт m не обязательно является плохой альтернативой.
[20:55] <chughgaurav> Спасибо MalCurtis & Matt
[20:55] <Matt> @ adamqureshi — Абсолютно. Я бы рекомендовал использовать нативный контроль. Яркий пример, с недавним обновлением iOS7, любые пользовательские элементы и элементы управления должны быть переработаны, так как они не соответствуют стандартным
[20:56] <adamqureshi> Мэтт понял!
[20:56] <qoonik> Хорошо, есть предложения, как сделать так, чтобы приложение html5 выглядело нативно на мобильном устройстве (кроме JQM :))?
[20:56] <HAWK> Вы выполняете легендарную работу, отвечая на все вопросы, Мэтт. Есть кто-нибудь, у кого еще не было ответа?
[20:57] <adamqureshi> chughgaurav также этот CLANK: фреймворк с открытым исходным кодом HTML / CSS для создания прототипов родных приложений для телефонов / планшетов.
[20:59] <Matt> qnoox — это сложный вопрос, я лично разработал бы свое собственное решение для «гибридного» стиля. Это повлечет за собой создание всех элементов управления изначально (для двух платформ) и максимально тесную интеграцию ваших веб-элементов. И Obj-C, и Java позволяют вам общаться через веб-обозрения через JS!
[21:00] <adamqureshi> Мэтт, не лучше ли построить каркас / кликабельный прототип, сделать все правильно и затем перейти в dev?
[21:01] <qnoox> спасибо, Мэтт, который мне очень помог 🙂
[21:01] <Speed> Мэтт, какой набор инструментов вы используете для создания приложений для iOS?
[21:01] <Matt> @adnan — Извините, только что дошел до этого. Я не использовал Google App Engine столько, сколько хотел бы. Большая часть работы, которую мы выполняем, имеет определенные требования относительно того, где должна лежать инфраструктура и т. Д. Люди, с которыми я общался, используют ее, часто используют для небольших приложений или для микросайтов нестандартного стиля.
[21:01] <Jen> Мэтт — спасибо, это довольно захватывающе
[21:01] <PaulE> Хорошо, позвони адамкуреши 🙂
[21:01] <Matt> @adamqureshi. ВСЕГДА каркас перед вводом кода.
[21:01] <qoonik> @Matt хорошо, но иногда вы хотите использовать какое-то готовое решение, которое просто работает.
[21:02] <Matt> Не обязательно быть интерактивным, бумаги часто работают так же хорошо, но они позволяют вам выделить области риска и часто заставляют людей задавать вопросы о вашем приложении, которые вы, возможно, просмотрели ,
[21:03] <adamqureshi> Проблема в том, что вы никогда не «ЗНАЕТЕ», что работает, метод проб и ошибок / наблюдение / тест…
[21:03] <Jen> @Matt Я люблю делать бумажные прототипы
[21:03] <Matt> Speed ​​- Xcode! Есть много рамок и удобных элементов управления, чтобы помочь вам.
[21:04] <adamqureshi> Бумажные прототипы Jen — это COOL, и они очень дешевы / полезны, они дают отличное представление о ментальных моделях пользователей.
[21:05] <Jen> @adam да тогда решай, как построить / аутсорсинг или построить в доме и т. Д.
[21:05] <Matt> Speed ​​- Если вы хотите начать работу с iOS, я бы посоветовал вам изучить бесплатные лекции Standford, доступные на iTunesU (
[21:05] <Matt> http://bit.ly/16vT6DJ
[21:07] <Matt> Кроме того, Рэй Вендерлих предлагает несколько отличных пошаговых инструкций для начала работы.
[21:07] <Matt> http://bit.ly/1aay53Z
[21:08] <Matt> Эти вопросы немного затормозились … кто-нибудь еще?
[21:08] <adamqureshi> @ Джен, я вижу. круто
[21:08] <adamqureshi> @matt, сколько времени пройдет до того, как сеть догонит нативную?
[21:09] <adamqureshi> @matt полный контроль над устройством
[21:09] <qoonik> будет веб-трансляция oreilly, кому-то интересно goo.gl/TXKL1y
[21:09] <PaulE> @Matt спасибо за совет Стэнфорда!
[21:09] <Matt> adamqureshi — Ух ты. Что за вопрос. Я не знаю, могу ли я дать вам правильный ответ на этот вопрос, но сеть, безусловно, движется быстрее, чем когда-либо.
[21:10] <adamqureshi> Мэтт, я бы сказал, 5 лет
[21:10] <adamqureshi> широкополосное проникновение + мобильный браузер. Это только вопрос времени
[21:11] <adamqureshi> Мэтт, наше ограничение — это каналы / широкополосный доступ. Однажды у нас есть Google Fibor. это будет конец для нативных приложений
[21:11] <CaptainSin> Является ли приложение хорошей идеей для интернет-магазинов малого бизнеса с небольшим количеством подписчиков?
[21:12] <Matt> CaptainSin — я бы сказал, что вы, вероятно, лучше подходите для мобильного сайта.
[21:12] <Speed> Спасибо, Мэтт. Сделаю.
[21:12] <HAWK> Какую самую большую ошибку совершают люди, пытаясь создать свое первое приложение? Чего следует избегать первому таймеру?
[21:13] <adamqureshi> хаха
[21:13] <Matt> Для крупных организаций может пригодиться нативное приложение, но для малого бизнеса меньшие инвестиции в мобильный сайт, вероятно, принесут вам больше пользы.
[21:13] <adamqureshi> Я бы сказал, что для малого бизнеса достаточно мобильного приложения.
[21:13] <Mladen> Отзывчивый веб-дизайн или приложение. Какой лучше? 🙂
[21:13] <CaptainSin> @ Мэтт Спасибо. Я не знаю, что сказать клиентам. Они хотят приложение для всего сейчас дни.
[21:13] <Matt> HAWK — Хорошие вопросы!
[21:14] <adamqureshi> Ястреб, я могу предоставить свою точку зрения?
[21:14] <HAWK> Конечно, дерзай
[21:15] <adamqureshi> самая большая ошибка в том, что они думают о технологиях в первую очередь, когда правильное решение — сначала психология / технология вторую
[21:15] <Matt> 1) Попытка получить все в свое приложение, v1. Начните с малого, добавьте функциональность позже, посмотрите, что хотят пользователи. (Никогда не удаляйте функциональность, если вы на 100% не уверены, что она не используется — я выучил трудный путь)
[21:15] <HAWK> Да, имеет смысл
[21:15] <PaulE> Спасибо, Мэтт. Хорошая точка зрения
[21:16] <HAWK> Люди очень взволнованы
[21:16] <adamqureshi> Было бы лучше, если бы они создавали каркасы и создавали прототипы, на которые можно кликать, и чтобы пользователи использовали их / и начинали удалять функции, чем меньше, тем больше, следует сосредоточиться на завершении «ЗАДАЧИ»
[21:16] <bruce> но если мы живем в области, где нет хорошего покрытия мобильной связи, то нам нужно больше склоняться к нативным приложениям и обновлять нативные приложения, когда связь хорошая?
[21:16] <Speed> Да, я тоже выучил уроки по удалению или изменению функциональности. Если другие хотят что-то другое, сделайте это настраиваемым или опцией.
[21:16] <qnoox> я должен сказать: сначала создай то, что тебе нравится, а затем создавай то, что нравится другим.
[21:17] <Matt> Младен — Это был один из самых горячих вопросов в Интернете в течение некоторого времени. Опять же, я должен сказать, что дело доходит до клиента и использовать пример того, что вы пытаетесь доставить.
[21:17] <adamqureshi> Мэтт, но есть ли различие между / Mobile сначала / RWD?
[21:18] <Младен> Я думаю, что мобильное приложение веб-сайта просто тратит время и деньги
[21:18] <Matt> В случае с одним из наших крупных клиентов мы начали с RWD, а затем, спустя 1 год, наконец-то сделали для них переход на native. Причина в том, что мы могли бы предложить родным пользователям дополнительную функциональность и лучший опыт. Если бы это было не так, мы бы этого не сделали.
[21:19] <adamqureshi> Младен зависит от того, разрабатываете ли вы свое «собственное» приложение / запускаете или работает ли его клиент, и это сопряжено с ограничениями. бюджет / время / и т. д.
[21:19] <adamqureshi> Мэтт, что ты думаешь?
[21:20] <adamqureshi> То, как вы подходите к проблеме, зависит от того, «какая это проблема», то есть если вы хотите создать свое собственное приложение / идею, существуют другие ограничения, чем выполнение клиентской работы.
[21:20] <Warrington> С точки зрения обучения — мы используем бесплатную версию Gamemaker для обучения основным понятиям программирования. Полная коллекция позволяет разрабатывать для разных платформ. Я думал, что это может помочь вдохновить девушек дальше, какие-нибудь мысли о Gamemaker Studio?
[21:21] <Мэтт> Брюс — Хороший вопрос. Сетевое подключение часто играет роль в решениях пользователей переключаться в ту или иную сторону (нативная или веб). И вы правы, часто родной — это способ использовать автономные возможности.
[21:21] <adamqureshi> Мэтт локальное хранилище догоняет? нет?
[21:23] <Matt> Warrington — я никогда не использовал Gamemaker Studio, он кросс-компилируется (похоже на PhoneGap)?
[21:23] <adamqureshi> Уоррингтон. Мне любопытно, если вы попробовали famo.us, игровой движок HTML 5.
[21:23] <adamqureshi> Warrington famo.us: позволяет разработчикам писать полностью 3D-приложения, не прибегая к сложным программным трюкам или скомпилированным приложениям.
[21:24] <HAWK> На сессии осталось ~ 5 минут, так что если вы сидите на вопросе, это ваш последний шанс!
[21:24] <Warrington> Мы собираем его для iOS, Android и HTML5
[21:24] <Уоррингтон> Да, извини
[21:25] <Уоррингтон> никогда не слышал о famo.us
[21:25] <adamqureshi> http://famo.us/
[21:25] <Matt> Warrington — Звучит как отличный инструмент для ваших учеников с самого начала. Надеюсь, это вдохновит их еще больше погрузиться в мобильную разработку.
[21:25] <Уоррингтон> Я должен быть осторожен с тем, чтобы использовать программное обеспечение, которое доступно для широкого круга девушек, но способно масштабироваться для более талантливых учеников.
[21:26] <adamqureshi> Это очень похоже на интерфейсы, которые вы видите в Iron Man или Minority Report, и работает практически на любой платформе, включая настольные ПК, Android и iOS
[21:26] <Warrington> Да, у меня есть несколько действительно талантливых программистов, которых я хочу продвигать дальше
[21:26] <Warrington> Выглядит круто — проверим
[21:27] <Matt> @adamqureshi — Да, в последнее время локальное хранилище стало стремительным. Было поднято несколько вопросов о его производительности, https://hacks.mozilla.org/2012/03/there-is-no-simple-solution-for-local-storage/
[21:27] <adamqureshi> Мэтт интересно
[21:27] <Matt> От которого Джон Аллсопп ответил http://www.webdirections.org/blog/localStorage-perhaps-not-so-harmful/
[21:28] <HAWK> Это как раз обёртывание людей. Говори сейчас или навсегда помолчи.
[21:28] <Matt> 🙂