Как стать автором
Обновить
33
0
Александр Салтыков @john_samilin

Пользователь

Отправить сообщение

Философские вопросы интернационализации веб-приложений

Время на прочтение3 мин
Количество просмотров843

Имея дело с переводами, вы сталкиваетесь с множеством каверзных вопросов, например, какие языки поддерживать, как вы переводите сообщения и как вы определяете язык. То, что казалось быстрой легкой задачей, становится бременем. Вот некоторые вещи, о которых следует помнить, прежде чем приступать к переводу приложения.

Языки

Если вы поддерживаете два или три языка, это не имеет большого значения. Но если вы хотите поддерживать дюжину вариантов, вы должны как-то решить, какие из них. Для начала неплохо погуглить самые популярные языки, но этот вариант совсем не точен. Лучше посмотрите статистику или аналитические отчеты, которые дадут вам представление о том, на каких языках говорят ваши пользователи. В Росплате я такие данные не собираю, поэтому нужна была другая точка отсчета. Мне пришлось проявить инициативу и просто спросить потенциальных пользователей: «Привет, ребята, какие языки вы ожидаете увидеть на странице настроек?». Честно говоря, ответ был неожиданным. Арабский, иврит, хинди и бенгалбский!

Обнаружение

Когда новый пользователь попадает в приложение, он может не говорить по-английски, который является языком по умолчанию. Значит, должен быть какой-то способ угадать. И есть один: используйте заголовок Accept-Language на стороне сервера. Этот заголовок не только говорит вам, какую локаль использовать, но и дает вам подсказку, например, этот пользователь говорит на языке А и языках Б (я уверен на 90%) и С (я уверен на 50%). С этой информацией вы можете быть намного увереннее: если вы не поддерживаете основной язык пользователя, вы, вероятно, можете использовать дополнительные.

Читать далее
Всего голосов 3: ↑1 и ↓2-1
Комментарии2

Как сегодня делают веб-приложения? Часть 1

Время на прочтение3 мин
Количество просмотров19K

Друзья, всем привет! Я занимаюсь веб-разработкой уже 13 лет. Помню, как когда-то jQuery был настолько удобным, что повлиял на веб-платформу: так появился querySelector. В конце прошлого года в порыве рефлексии я был удивлен тем, насколько удобней с тех пор стали браузерные API: словно используя сборщики, транспиляторы и автопрефиксеры, я пользовался не веб-платформой, а чем-то другим, надстройкой, которая живет и развивается по своим правилам. Современные браузеры умеют асинхронно загружать js-модули, кешировать состояние страницы при переходах, отслеживать производительность, реагировать на предпочтения пользователя, не говоря уже о десятках API для всех случаев жизни, начиная NFC, заканчивая поддержкой геймпадов.

Но есть один важный вопрос, который нам с вами стоит обсудить: как нам делать веб-приложения, если завтра прилетит волшебник в голубом вертолете и заберет все привычные инструменты?

Читать далее
Всего голосов 15: ↑6 и ↓9-3
Комментарии13

Как сегодня делают игры в браузере? Часть 3

Время на прочтение3 мин
Количество просмотров3.8K

Две предыдущие части (первая и вторая) были своего рода мануалами о том, как загружать модели и передвигать их. В этот раз я расскажу о том, как добавить больше интерактивности. В частности, статистику в реальном времени и столкновения.

Читать далее
Всего голосов 7: ↑4 и ↓3+1
Комментарии0

Как сегодня делают игры в браузере? Часть 2

Время на прочтение3 мин
Количество просмотров2.6K

В этот раз речь пойдет о немного более сложных вещах, таких, как управление состоянием, компоненты высшего порядка и Gamepad API.

Как вообще-то передвигать персонажа (который есть набор отдельных 3D-объектов) в пространстве? Я уже рассказывал ранее в 4 шаге о том, об объединении объектов в группу. Еще раз: вы можете перемещать группу с линейной скоростью; в сумме с подходящей анимацией это будет выглядеть как ходьба или бег, в зависимости от вашей задумки.

Читать далее
Всего голосов 6: ↑5 и ↓1+4
Комментарии0

Как сегодня делают игры в браузере? Часть 1

Время на прочтение4 мин
Количество просмотров8K

Игра в браузере на React и Three.js!

Я занимаюсь фронтендом уже очень давно, порядка 10 лет. И как любой уважающий себя фронтендер, я люблю тащить javascript туда, где обычно его не используют: на сервер, в мобильные приложения, в геймдев. С тех пор как я увидел первые WebGL демосцены в 2013-м, я мечтал сделать что-то похожее, скажем, на это.

Так что я провел немало времени экспериментируя и читая документацию, и вот что у меня получилось.

Дисклеймер: я не претендую на абсолютные знания того, как делают игры, я всего лишь описываю свой наивный подход к поиску ответа на вопрос, который задает заголовок. Поэтому это будет не совсем игра, а скорее концепт, интерактивная демо-сцена.

Читать далее
Всего голосов 9: ↑8 и ↓1+7
Комментарии10

Многостороннее преломление в трех шагах

Время на прочтение6 мин
Количество просмотров1.4K

Когда вы визуализируете 3D-объект, вам всегда нужно добавлять к нему какой-то материал, чтобы он был виден, и выглядел так, как вы хотите; неважно, делаете вы это в специальных программах или в режиме реального времени через WebGL.


Большую часть материалов можно имитировать с помощью встроенных средств библиотек вроде Three.js, но в этом уроке я покажу вам, как заставить объекты выглядеть, как стекло за три шага с помощью — вы угадали — Three.js.

Читать дальше →
Всего голосов 5: ↑4 и ↓1+3
Комментарии0

Компания Appcelerator выпустила Hyperloop

Время на прочтение1 мин
Количество просмотров2.4K
11 августа состоялся релиз Hyperloop — технологии, позволяющей обращаться к нативным API iOS и Android из Javascript-кода. Hyperloop будет доступен подписчикам платформы (Appcelerator Platform) на всех планах, кроме Indie.
Читать дальше →
Всего голосов 12: ↑7 и ↓5+2
Комментарии1

Что такое «Нативное приложение»?

Время на прочтение4 мин
Количество просмотров97K
Следующее высказывание с легкостью может прозвучать от того, кто только что начал изучать Titanium:
JavaScript?! Как Phonegap? Не, я лучше сделаю нативное приложение.

Разумеется, у меня были подобные беседы с клиентами, когда я был фриланс-разработчиком на Titanium. И уж конечно, как Developer Advocate, я частенько слышу это когда начинаю объяснять Titanium разработчикам, которые ищут кросс-платформенное решение для создания приложений.
Читать дальше →
Всего голосов 18: ↑11 и ↓7+4
Комментарии35

Все, что вы хотели знать о моделях и коллекциях в Titanium

Время на прочтение7 мин
Количество просмотров3.6K
Но по какой-то причине боялись спросить.

Модели — достаточно важная часть приложения, потому что без данных никуда.

В этой статье я постараюсь максимально подробно осветить все аспекты использования моделей в MVC фреймворке для разработки мобильных приложений Appcelerator Titanium.

Если вы еще не пробовали связываться с моделями, то, надеюсь, эта статья сэкономит вам пару километров нервов.
Читать дальше →
Всего голосов 11: ↑10 и ↓1+9
Комментарии0

Appcelerator Titanium SDK обновился до версии 5.1.0

Время на прочтение12 мин
Количество просмотров4.3K
Недавно Appcelerator SDK обновился до версии 5.1.0. Появилось много полезных фич.
Список изменений:
Читать дальше →
Всего голосов 8: ↑7 и ↓1+6
Комментарии0

Создание приложений OS X с помощью JavaScript

Время на прочтение13 мин
Количество просмотров21K
Недавно в OS X Yosemite была представлена возможность использования JavaScript для автоматизации. Это открывает возможность получать доступ к нативным* фреймворкам OS X из JavaScript. Я тут покопался в этом новом мире и собрал несколько примеров. В этом посте я объясню основы и шаг за шагом покажу процесс создания небольшого приложения
Читать дальше →
Всего голосов 44: ↑43 и ↓1+42
Комментарии35

3D-режим в Diablo 2

Время на прочтение5 мин
Количество просмотров117K
Это перевод поста Don't Starve, Diablo — Parallax 7 из блога Simon Schreibt от 25 февраля 2014 года.
Осторожно, тяжелые гифки.

В 90-х игры начали свое движение от 2D к 3D. Если бы НЛО тогда посетило землю, пришельцы решили бы, что используемые в то время низкополигональные модели без всякой фильтрации никому не нужны, и уничтожили бы Землю.

Со временем они, конечно, научились бы тому, что делало людей особенными: даже в эру 2D у них было невероятное желание рендерить в 3D, даже при том, что тогда это было просто невозможно!
Читать дальше →
Всего голосов 184: ↑184 и ↓0+184
Комментарии33

Эдди Османи: Паралич выбора

Время на прочтение3 мин
Количество просмотров17K
Это перевод поста «Front-end Choice Paralysis» Addy Osmani, опубликованный 1 июля 2014 года.

Во фронтенд-разработке мы постоянно сталкиваемся с такой проблемой, как изобилие выбора. Мы видим избыток инструментов, фреймворков, языков, абстракций и платформ. Такой выбор — это, безусловно, хорошо для конкуренции и дальнейшего развития, однако, сталкиваясь с таким количеством вариантов, можно впасть в ступор. Вместо того чтобы сделать свой выбор, чувствуешь себя брошенным, с чувством неопределенности перед огромной кучей вариантов. Это не обязательно проблема отрасли фронтенд-разработки – эта проблема человеческой природы.
Читать дальше →
Всего голосов 38: ↑30 и ↓8+22
Комментарии19

Информация

В рейтинге
3 556-й
Дата рождения
Зарегистрирован
Активность