Pull to refresh

Comments 37

Буквально несколько месяцев назад на хабре была статья об опасности подмены QR-кодов, а в разрезе данной статьи эта опасность выглядит так — злоумышленник может спокойно наклеить поверх магазинного кода свой код, и вы будете покупать печеньки у него. А для того чтобы защититься от этого, понадобится не язык разрабатывать а интерфейсы и стандарты.
p.s. но направление мысли нравится
Вот и пример технологии, внешне неотличимой от магии.

И ведь всё ещё находятся ограниченные люди, которые спрашивают: ну зачем детям и подросткам (а также взрослым людям, особенно взрослым людям!) читать (играть, смотреть) фэнтэзи, это же не про реальный мир, ну что оно своим фанатам даёт?!…

Умственные навыки мышления, полезные для выживания в техномагическом грядущем — вот что оно даёт, вот что!…
/me кастует плюсик вашему комментарию.
Идея отличная.

Есть вопрос: я не специалист по андроиду, но первое что приходит в голову: почему не заюзать какой-нибудь встраиваемый язык типа Lua, чтоб не делать велосипеды?
Мощность языка избыточна. Да и может не поместиться в код. Даже крупные коды вмещают до двух с чем-то килобайт. А маленькие и того меньше. Ну и понятное дело, всегда приятно сделать что-то свое.
Можно поиграться с алгоритмами сжатия, но Вы, имхо, правы, полноценный язык — слишком жирно, а то найдутся умельцы трояны писать.
Если язык интерпретируемый — то можно запускать в песочнице — доступ в сеть только через спец-демон, например (как это у Ms Store приложений с файловой системой — там для получения доступа к произвольному каталогу нужно вызвать функцию API, которая вызывает диалоговое окно что работает В ДРУГОМ ПРОЦЕССЕ и только тогда приложение получает доступ к тому каталогу. Плюс, все приложения работают в спец-песочнице.)
Задумка классная, мне понравилось, но я бы поставил на будущие за html и js.
Причем тут пхп?
На html и canvas сейчас можно сделать любой интерфейс, на js (с небольшими доработками под андроид) написать любую логику.

Можно делать специальные пакеты, ссылку предоставлять в QR коде.

P.S. если вы не согласны, что будущие за js, отпишите ваши мысли, мне просто очень любопытно.
называете язык Qurva и резонанс в Польше, аналогичный недавнему с Fedora и RPi обеспечен :)

А по сабжу — почему бы просто не кодировать в QR байт-код Java?
Мне кажется, что полноценная Java для этого дела слишком велика и неповоротлива, но я подумаю над Вашим предложением.
UPD: Еще возможны проблемы с Oracle.
А что насчёт байткода Питона?
Я бы посоветовал начать непосредственно с битовых инструкций. Можно очень много сэкономить на месте, если не мерять все октетами (а вам то этого и не надо). Проблему необходимых «отступов» для тех же строк можно решить разными секциями (как это делается в бинарных файлах).
Спасибо за совет. Почитаю об этом.
Вики говорит, что в QR-код помещается чуть менее 3Kb. В принципе, AVR-ки впролне можно натаскивать на простые задачи впихивая все и в 2Kb, так что у этой задачи есть потенциальный практический успех (что сложно сказать о практическом применении, но это все же отличный just for fun).

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

Остается вопрос – что будут делать эти приложения? Так или иначе, нужны примитивные арифметические операции, циклы. Это можно не придумывать заново, а взять один из наборов инструкций, которые хорошо себя чувствуют в тесном окружении. ARM Thumb сразу приходит в голову, потому что его можно было бы выполнять сразу на железе, но на самом деле этот набор было бы полезно расширить какими-то высокоуровневыми «прикладными» инструкциями (т.е. построить CISC архитектуру, в противовес RISC).

Успехов в общем, и обязательно отпишитесь по результатам, даже если ничего не выгорит (особенно если ничего не выгорит – будет интересно узнать о том, что вы перепробовали).
Два килобайта кода – это не так уж и много для создания осмысленных приложений, да и у кодов большого размера будут проблемы с чтением из-за небольшого размера элементов.
Что такого в перспективе позволит сделать QuRava, чего нельзя достичь ссылкой на небольшое HTML5/js приложение, кроме работы в офлайне? Мне приходит на ум только демосцена из-за примечательной конструкции языка и ограничения на объём программы.
Сразу на ум приходит несколько вещей.
1) Доступ к хардварным частям устройства. Через HTML/js это если и возможно, то очень трудно
2) Доступ к частям операционной системы.
3) Стандартизация интерфейсов. Хорошо, когда гайдлайны по UI намертво вшиты в платформу. Например, интерфейс любого приложения под Андроид, сделанного стандартными средствами может быть плох, но не отвратителен. А если дать разработчикам возможность лепить на HTML/js, то родится адское множество монстров.

Хотя, возможно, Вы и правы. Время покажет.
Добавите функцию по функционалу сравнимой с Ok glass. Send SMS with text… on number… и — думаю Вашу программу будут заинтересованы продвигать ОЧЕНЬ многие люди :D
Не-е-ет! Вот очередной виток этих premium sms не надо, пожалуйста.
Это скорее типа такой ситуации — идешь по улице, увидел QR код и БАЦ — уже на счете не хватает примерно так 10$ :)
Так все совремменые (и не очень) телефоны всегда требуют разрешения (или отправка sms у них прописана как permission)
в Android достаточно получить это разрешение при установке — а в Glass стоит модифицированный Android 4.x ветки.
Ага, и это разрешение приходится выдавать всяким программулинам при установке. С помощью Cyanogenmod (а также некоторых программ) такие разрешения можно отозвать, но не уверен, что такая возможность будет с Glass.
Непонятно, как отличать обыный код со ссылкой от программы?
Чего ж непонятного? Другой тип КуАр-коду поставить.
Посмотрите в сторону форт-машин. Стековый язык, возможно, подошёл бы вам больше.
Запилить бакэнд для LLVM, и можно на чём угодно будет писать. Или наоборот — фронтэнд, и исполнять на любой железяке.
Всё равно выходит некий байт-код, хоть и интерпретируемый!
А почему бы тогда вообще не посмотреть в сторону какого-нибудь существующего ассемблера и плясать на его основе? Под X86, помню, была куча 4К-демок с графикой и прочим. А уж тут в «виртуальный кристалл» можно не стесняться вставлять высокоуровневые инструкции.
Z80, MSP430 или ARM, минус их сугубо аппаратные ограничения, плюс высокоуровневые возможности.
представляю гуглоглассеров и иже с ними тогда когда эту штуку возьмут в оборот рекламщики — идешь по городу и по всюду не просто билборды с тектом а вылезающее 3д — машущее руками и предлагающее купить.
Уж лучше специальные ссылки на сайты сервисов с параметрами.
Учитывая что андроид приложение (специализированное) может перехватывать свои ссылки, то обращения в сеть не будет (например карты или ютуб так делают).
А если у человека нет этой специальной программы, то он просто попадет на сайт, который все нужное покажет или предложит ее установить.
Есть ли какие-нибудь новости с QuRava? Как поживает проект?
Sign up to leave a comment.

Articles