Несколько интересностей и полезностей для веб-разработчика (выпуск 9)

Доброго времени суток уважаемые хабравчане. За последнее время я увидел несколько интересных и полезных инструментов/библиотек/событий, которыми хочу поделиться с Хабром.

Docpad


«Нашумевший» проект в Twitter и GitHub. По заявлению разработчиков «Docpad снимает ограничения и убирает разрыв между профессионалами и новичками. Теперь дизайнеры и разработчики могут создавать веб-сайты быстрее, чем когда-либо прежде». Docpad — это статический генератор сайтов написанный на Node.js. Он позволяет с легкостью создавать шаблоны и блоки. Работает c PHP, Ruby, CoffeeScript и др. В нем есть file wathing, live reload и самое главное «amazing plugin system». Большим плюсом является обучающее видео (хоть и на английском).

Видео: Rapid Web Development with DocPad

/>Hammer.js

Очень функциональный скрипт для работы с touch событиями. Существует как самостоятельная библиотека и как jQuery плагин. Поддерживает Tap, DoubleTap, Swipe, Drag, Pinch и Rotate. Более 6000 GitHub старов за месяц.

Пример:

Hammer(el).on("swipeleft", function() {     alert('you swiped left!'); }); 

Полезнейшая CSS шпаргалка для верстки писем

List.js

Слова от автора проекта Jonny: «Крошечная, незаметная, простая, но все же очень мощная и невероятно быстрая библиотека на vanilla JavaScript, которая добавляет поиск, фильтры, сортировку к HTML спискам, таблицам и чему либо другому ».

Пример поиска по списку:

JavaScript

var options = {   valueNames: [ 'name', 'born' ] };  var userList = new List('users', options); 

Все!

HTML

  <div id="users">     <input class="search" placeholder="Search" />     <button class="sort" data-sort="name">       Sort by name     </button>        <ul class="list">       <li>         <h3 class="name">Jonny Stromberg</h3>         <p class="born">1986</p>       </li>       <li>         <h3 class="name">Jonas Arnklint</h3>         <p class="born">1985</p>       </li>       <li>         <h3 class="name">Martina Elm</h3>         <p class="born">1986</p>       </li>       <li>         <h3 class="name">Gustaf Lindqvist</h3>         <p class="born">1983</p>       </li>     </ul>      </div> 

Bearder WordPress Theme

Напоследок:


22 ноября прошло ровно 50 лет со дня смерти Джона Кеннади. К этому событию в National Geographic разработали сайт Killing Kennedy. Поскольку в правилах хабра сказано, что это не место для политики, то скажу пару слов только про этот сайт. Во-первых: он очень информативный и содержит множестве интересных фактов. Во-вторых: это «идеальный» пример того, как и когда нужно использовать Parallax Scrolling. В последнее время параллакс стал неким трендом и разработчики стараются его использовать там где не нужно.


Очень интересный тест для front-end разработчиков.

                                                          Предыдущая подборка (Выпуск 8)

Понравилась ли Вам подборка?

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

Никто ещё не голосовал. Воздержавшихся нет.

ссылка на оригинал статьи http://habrahabr.ru/post/204130/

OCZ признала себя банкротом…

Просто сумашедшая новость перед окончанием рабочей недели и года. Компания OCZ, которая является одним из передовых производитетелей твердотельных накопителей (SSD) и модулей оперативной памяти (RAM), намедни заявила о начале процедуры банкротства.

В последнее время продажи у легенды современного рынка SSD, OCZ Technology Group, росли как никогда, однако руководство компании приняло решение свернуть бизнес из-за низкой рентабельности. В связи с чем Toshiba уже предложила выкупить компанию вместе со всей интелектуальной собственностью и просизводственными мощностями. В принципе, это предложение выгодно и той, и другой компании.

В течение часа будут новые подробности…

ссылка на оригинал статьи http://habrahabr.ru/post/204288/

Apple скоро откроет Apple Store в Москве

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

Вот сама вакансия:


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

Будете ли вы покупать технику Apple в официальном магазине?

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

Никто ещё не голосовал. Воздержавшихся нет.

ссылка на оригинал статьи http://habrahabr.ru/post/204280/

Методы анонимности в сети. Часть 4. Tor&VPN. Whonix


Всем привет!

Вот мы и дошли до более интересных вещей. В этой статье мы рассмотрим варианты комбинирования Tor с VPN/SSH/Proxy.
Для краткости далее я буду писать везде VPN, ведь вы все — молодцы и уже знаете плюсы и минусы VPN, SSH, Proxy, которые мы изучили ранее здесь и здесь.
Мы рассмотрим два варианта подключений:

  • сначала VPN, потом Tor;
  • сначала Tor, а потом VPN.

Также я расскажу про дистрибутив ОС Whonix, реализующий самые передовые достижения в области сетевой анонимности, ведь в нём, помимо всего прочего, настроены и работают обе анализируемые схемы.
Предыдущие части здесь:
Часть 1: Методы анонимности в сети. Просто о сложном.
Часть 2: Методы анонимности в сети.
Часть 3. Методы анонимности в сети. Firefox.

Для начала давайте определимся с некоторыми постулатами:
1. Сеть Tor обеспечивает высокий уровень анонимности клиента при соблюдении всех обязательных правил её использования. Это факт: реальных атак в паблике на саму сеть, ещё не было.
2. Доверенный VPN-(SSH)-сервер обеспечивает конфиденциальность передаваемых данных между собой и клиентом.
Таким образом, для удобства в рамках данной статьи мы подразумеваем, что Tor обеспечивает анонимность клиента, а VPN — конфиденциальность передаваемых данных.

Tor через VPN. Сначала VPN, потом Tor

VPN-сервер при такой схеме является постоянным входным узлом, после него шифрованный траффик отправляется уже в сеть Tor. На практике схема реализуется просто: сначала производится подключение к VPN-серверу, далее запускается Tor-браузер, который автоматически настроит нужную маршрутизацию через VPN-тоннель.

Использование такой схемы позволяет скрыть сам факт использования Tor от нашего Интернет-провайдера. Также мы будем закрыты от входного узла Тора, который будет видеть адрес VPN-сервера. А в случае теоретической компрометации Tor, нас защитит рубеж VPN, который, разумеется, не хранит никаких логов.
Использование вместо VPN прокси-сервера, лишено смысла: без шифрования, обеспечиваемого VPN, мы не получим каких-либо значимых плюсов в такой схеме.

Стоит отметить, что специально для обхода запрета Tor интернет-провайдерами придумали так называемые bridges (мосты).
Мосты – это такие узлы сети Tor, которые не занесены в центральный каталог Tor, то есть не видны, например, здесь или здесь, а, следовательно, труднее обнаруживаются.
Как настроить мосты, подробно написано здесь.
Несколько мостов может дать нам сам сайт Tor по адресу.
Можно также получить адреса мостов по почте, отправив на адрес bridges@torproject.org или bridges@bridges.torproject.org письмо с текстом: «get bridges». Обязательно отправлять это письмо с почты от gmail.com или yahoo.com
В ответ мы получим письмо с их адресами:
«Here are your bridge relays:
bridge 60.16.182.53:9001
bridge 87.237.118.139:444
bridge 60.63.97.221:443
»
Эти адреса нужно будет указать в настройках Vidalia – прокси-сервера Tor.
Иногда происходит так, что и мосты блокируются. Для обхода этого в Tor введены так называемые «obfuscated bridges». Не вдаваясь в подробности, их труднее обнаружить. Чтобы к ним подключиться, надо, например, скачать, Pluggable Transports Tor Browser Bundle.

Плюсы схемы:

  • мы скроем от Интернет-провайдера сам факт использования Tor (или подключимся к Tor, если его блокирует провайдер). Однако, для этого существуют специальные мосты;
  • скроем от входного узла Tor свой ip-адрес, заменив его адресом VPN-сервера, однако это не самое эффективное повышение анонимности;
  • в случае теоретической компрометации Tor, останемся за VPN-сервером.

Минусы схемы:

  • мы должны доверять VPN-серверу при отсутствии каких-либо значимых плюсов такого подхода.

VPN через Tor. Сначала Tor, потом VPN

В таком случае VPN-сервер является постоянным выходным узлом в сеть Интернет.

Подобная схема подключения может использоваться для обхода блокировки узлов Tor внешними ресурсами, плюс она должна защитить наш траффик от прослушивания на выходном узле Tor.
Существует немало технических сложностей в установлении такого подключения, например, вы же помните, что цепочка Tor обновляется раз в 10 минут или то, что Tor не пропускает UDP? Самый жизнеспособный вариант практической реализации это использование двух виртуальных машин (об этом чуть ниже).
Важно также отметить, что любой выходной узел легко выделит клиента в общем потоке, так как большинство пользователей идут на разные ресурсы, а при использовании подобной схемы клиент идёт всегда на один и тот же VPN-сервер.
Естественно, что использование обычных прокси-серверов после Tor не имеет особого смысла, так как траффик до прокси не шифруется.

Плюсы схемы:

  • защита от прослушивания траффика на выходном узле Tor, однако сами разработчики Tor рекомендуют использовать шифрование на прикладном уровне, например, https;
  • защита от блокирования адресов Tor внешними ресурсами.

Минусы схемы:

  • сложная реализация схемы;
  • мы должны доверять выходному VPN-серверу.

Концепция Whonix

Существует множество дистрибутивов ОС, основной целью которых является обеспечение анонимности и защиты клиента в Интернете, например, Tails и Liberte и другие. Однако наиболее технологичным, постоянно развивающимся и эффективным решением, реализующим самые передовые техники по обеспечению безопасности и анонимности, является дистрибутив ОС Whonix.
Дистрибутив состоит из двух виртуальных машин Debian на VirtualBox, одна из которых является шлюзом, отправляющим весь траффик в сеть Tor, а другая – изолированной рабочей станцией, подключающейся только к шлюзу. Whonix реализует в себе механизм так называемого изолирующего прокси-сервера. Существует также вариант физического разделения шлюза и рабочей станции.

Так как рабочая станция не знает свой внешний ip-адрес в Интернете, это позволяет нейтрализовать множество уязвимостей, например, если вредоносное ПО получит root-доступ к рабочей станции, у него не будет возможности узнать реальный ip-адрес. Вот схема работы Whonix, взятая с его официального сайта.

ОС Whonix, как утверждают разработчики, успешно прошла все возможные тесты на утечки. Даже такие приложения как Skype, BitTorrent, Flash, Java, известные своими особенностями выходить в открытый Интернет в обход Tor, также были успешно протестированы на предмет отсутствия утечек деанонимизирующих данных.
ОС Whonix реализует много полезных механизмов анонимности, я укажу наиболее важные:

  • весь траффик любых приложений идёт через сеть Tor;
  • для защиты от профилирования траффика ОС Whonix реализует концепцию изоляции потоков. Предустановленные в Whonix приложения настроены на использование отдельного Socks-порта, а так как каждый Socks-порт использует отдельную цепочку узлов в сети Tor, то профилирование невозможно;
  • обеспечивается безопасный хостинг сервисов «Tor Hidden services». Даже, если злоумышленник взломает web-сервер, то он не сможет украсть закрытый ключ «Hidden»-сервиса, так как ключ хранится на Whonix-шлюзе;
  • Whonix защищен от DNS-утечек, так как в своей архитектуре использует принцип изолированного прокси. Все DNS-запросы перенаправляются на DnsPort Tor’а;
  • Whonix поддерживает «obfuscated bridges», рассмотренные ранее;
  • применяется технология «Protocol-Leak-Protection and Fingerprinting-Protection». Это снижает риск идентификации клиента через создание цифрового отпечатка браузера или системы путем использования наиболее часто применяемых значений, например, имя пользователя – «user», временная зона – UTC и т.д.;
  • есть возможность туннелировать другие анонимные сети: Freenet, I2P, JAP, Retroshare через Tor, или работать с каждой такой сетью напрямую. Более подробные данные об особенностях таких подключений находятся по ссылке;
  • важно отметить, что в Whonix протестированы, документированы и, главное, работают (!) все схемы комбинирования VPN/SSH/Proxy с Tor. Более подробную информацию об этом можно получить по ссылке;
  • ОС Whonix – это полностью открытый проект, использующий свободное ПО.

Однако стоит отметить, что ОС Whonix имеет и свои недостатки:

  • более сложная настройка, чем Tails или Liberte;
  • требуются две виртуальные машины или отдельное физическое оборудование;
  • требует повышенного внимания к обслуживанию. Надо следить за тремя ОС вместо одной, хранить пароли, и обновлять ОС;
  • в Whonix кнопка «New Identity» в Tor не работает. Дело в том, что Tor-браузер и сам Tor изолированы по разным машинам, следовательно, кнопка «New Identity» не имеет доступа к управлению Tor. Чтобы использовать новую цепочку узлов, нужно закрыть браузер, изменить цепочку с помощью Arm, панели управления Тор, аналога Vidalia в Tor Browser, и запустить браузер снова.

Проект Whonix развивается отдельно от проекта Tor и иных приложений, входящих в его состав, следовательно Whonix не защитит от уязвимостей в самой сети Tor или, например, 0-day-уязвимости в межсетевом экране, Iptables.

Безопасность работы Whonix можно описать цитатой из его wiki: «And no, Whonix does not claim to protect from very powerful adversaries, to be a perfectly secure system, to provide strong anonymity, or to provide protection from three-letter agencies or government surveillance and such».
Если вас ищут ведомства «их трёх букв», вас найдут 🙂

Вопрос дружбы Tor и VPN — неоднозначный. Споры на форумах по этой теме не утихают. Я приведу некоторые наиболее интересные из них:

  1. раздел о Tor и VPN с официальной страницы проекта Tor;
  2. раздел форума дистрибутива Tails по проблеме VPN/Tor с мнениями разработчиков Tails. Сам форум сейчас уже закрыт, но Гугл сохранил кеш обсуждения;
  3. раздел форума дистрибутива Liberte по проблеме VPN/Tor с мнениями разработчиков Liberte.
  4. Спасибо за внимание!

ссылка на оригинал статьи http://habrahabr.ru/post/204266/

Ошибки при сертификации приложения в Windows Store

Грабли Windows StoreПривет всем. Перед вами очередная статья, посвященная публикации приложения в Windows Store. В отличии от других, в ней не будет самого алгоритма правильного создания, тестирования и выкладывания приложения в Магазин. Здесь будет описан только процесс сертификации пакета и его последствия.

Статья преследует цель помочь начинающим разработчикам заранее учесть и исправить все возможные недочеты, дабы потом не переделывать свое приложение. Надеюсь, что у меня получилось осветить если не все, то хотя бы большую часть возможных ошибок сертификации. К слову, если вы любите официальные документы, то можете прочесть «Требования к сертификации приложения для Магазина Windows», однако, они не совсем конкретны и содержат фразы вроде таких: «Любой недостаток, который, по мнению наших инженеров-испытателей, нарушает полную функциональность приложения, станет причиной неудовлетворительных результатов сертификации»

Именно для того, чтобы внести побольше конкретики и поделиться с вами своим небольшим опытом, я и пишу эту статью.

Предисловие для тех, кто не знает, что такое Windows Store

Это магазин приложений для Windows 8 и 8.1. В данный момент он очень необычен и не похож на Google Play или AppStore. Если в последних зайти в топ платных (или бесплатных) приложений, то скорее всего вы найдете причину, почему каждая из программ находится в нем. В Windows Store же это сделать трудно (особенно в Windows Phone Store), поскольку по причине непопулярности магазина, у качественных приложений столь же мало скачиваний и оценок, сколь и у некачественных.

Приведу пример, чтобы вам было понятно. Зашел недавно в Marketplace (Windows Phone Store) и в первой сотне топа платных увидел набор приложений (видимо, от одного автора) из которых можно выстроить целую драму: Как выбрать девушку → Как соблазнить девушку → Как сделать предложение → Как развлечь ребенка → Как бросить девушку → Как понять кота. Повторюсь, что это был платный топ и люди действительно платили за эти приложения.

Публикация приложения

Сам процесс хорошо описал пользователь itdevelop в своей статье. Я не буду повторяться, поэтому, если еще не читали, но есть желание опубликовать что-то свое в Магазин — советую к прочтению.

Я хочу дополнить лишь ее концовку. Сейчас приложения проходят проверку довольно быстро, несмотря на то, что в окне «Состояние сертификации» пишут, что некоторые шаги проверки могут занимать около 5 дней. Первый выпуск у меня, например, проверили меньше, чем за 8 часов. Второй чуть дольше (12-15), видимо, дело в выходных, или же проверяли какие именно изменения я внес.

Также стоит отметить тот факт, что вы не сразу появитесь в самом магазине. По моим наблюдениям его кэш обновляется примерно раз в сутки, причем, неравномерно. Сперва, где-то часов через 5, там появилось именно мое приложение (когда я переходил по предоставленной ссылке на него), затем появилась страница со всеми моими приложениями (+5-7 часов), следом оно начало появляться в поиске (+4-5 часов) и, наконец, при наборе его названия в строке поиска, спустя примерно сутки после публикации, оно стало выдаваться в качестве подсказки.

И, наконец, хочу рассказать про еще один негативный момент. Статистика скачиваний, оценок, отзывов и всего прочего обновляется примерно раз в 2–3 дня. Причем, как в самом Магазине, так и в панели разработчика.

Ошибки сертификации

Наконец-то мы дошли до самого главного. О самой сертификации уже было выше, теперь стоит сказать о том, что случается после нее. Тут два варианта. Или вы попадаете в Магазин, или же вы получаете ответ от тестеров Microsoft, к которому скорее всего прикреплен PDF-файл, в котором описано, как и где именно они получили ошибку. Итак, что же можно от них получить?

Ваше приложение не соответствует требованию 1.2

Возможные причины:

  • некоторые части приложения не работают или содержат заполнители («скоро», «будет добавлено» и пр.);
  • приложение работает не со всеми архитектурами, поддержка которых заявлена;
  • описание приложения неясно или вводит в заблуждение;
  • в описание приложения входят снимки экрана или утверждения, по которым можно сделать вывод о наличии функций, не реализованных в приложении;
  • в приложении нельзя управлять автоматически воспроизводимым звуком;
  • в описании нет явного указаний требований к оборудованию или к сети.

В первую очередь стоит проверить описание своего приложения в Магазине. Приведу простой и понятный пример. В игре, которую я написал, нужно уложить все фигурки в предоставленное поле. Примерно так я и написал в описании, а в самой же программе, в разделе «Правила» добавил раздел связанный с управлением, мол, что фигурки можно крутить нажав на них правой клавишей мыши. Однако, как вы понимаете, этого недостаточно, ведь пользователь может и не заглянуть в этот раздел. Он должен все явно узнать именно из описания. Поэтому, если у вас есть какие-то такие скрытые возможности управления, о них стоит сказать явно.

По поводу первого пункта: сколь я понял, можно использовать те самые заполнители «скоро» и пр. По крайней мере, с ними у меня приложение проходило сертификацию (точнее, не проходило по другим параметрам). Но использовать их можно только в том случае, если они не ограничивают какие-то основные возможности вашей программы. Пример неудачного использования подобного заполнителя: вы указали, что в вашем приложении можно слушать музыку, а оказалось, что «это будет скоро добавлено». Однако, если же вы указали, что можно слушать музыку, а в самом приложении разбили ее на исполнителей, то вы вполне можете заявить, что в следующем обновлении будет добавлено еще N из них.

Также я советую тем, кто делает какие-то логические игры или что-то подобное, сообщать тестерам (в комментариях к выпуску) ответы на некоторые из уровней, чтобы они могли проверить работоспособность вашей программы и посмотреть, что именно будет после прохождения уровня. Скорее всего они и так это проверят, просто если у них сразу будут ответы, они сделают это куда быстрее. А это вам на руку. Аналогичные действия следует предпринимать, если приложению требуется авторизация где-либо.

Ваше приложение не соответствует требованию 3.2

Возможные причины:

  • приложение завершается сбоем при загрузке;
  • приложение завершается сбоем время от времени или неоднократно;
  • приложение перестает реагировать.

Причин здесь огромное множество. Вполне возможно, что вы чего-то не учли. Поэтому всегда при публикации (по крайней мере при первой точно) делайте проверку приложения утилитой WACK (VS предлагает, после того, как собирает пакет). Это занимает минут 5-10, но зато вы точно убедитесь в том, что приложение на 90% не попадет под эту ошибку.

Также возможно, что вы где-то используете не асинхронную загрузку, а потому приложение подвисает. async/await простая и полезная вещь — попробуйте, приложение от этого станет только лучше.

И последнее — не пытайтесь загрузить приложение под Windows 8 в качестве Windows 8.1 или наоборот. Оно просто упадет при тесте и вы не пройдете сертификацию именно по этой причине.

Ваше приложение не соответствует требованию 3.5

Возможные причины:

  • один или несколько элементов плитки в приложении не реагируют на касания;
  • приложение не поддерживает клавиатуру и мышь.

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

Также стоит проверить, точно ли человек с планшета сможет полноценно управлять вашим приложением. Так было в моем случае: я поставил обработчик на двойной клик правой клавишей мыши, но совсем забыл про то, что у пальца нет правой клавиши. Пришлось также вешать и обработчик двойного касания. Если вы хотите точно быть уверенным в том, что ничего не упустили — запустите приложение в тестовом режиме при помощи Имитатора (в Visual Studio нужно выбрать его в качестве машины, на которой запускается приложение, а в нем уже выбрать режим тач-экрана) и попробуйте сделать все то, что делали бы на компьютере.

Картинка в тему поста

image

Ваше приложение не соответствует требованию 3.8

Возможные причины:

  • приложение запускается дольше 5 секунд;
  • приложение приостанавливается дольше 2 секунд.

Это сложно протестировать, если у вас нет маломощных устройств, а только ноутбук с 8 Гб оперативной памяти на борту. Однако, могу посоветовать вам вспомнить про async/await (благо туториалов уже достаточно) и использовать асинхронную загрузку каких-то не совсем важных данных. Например, если вы написали все тот же медиа-плеер, подгрузить плейлист можно и постепенно, уже после основной загрузки приложения. Аналогично с приостановкой. Записывайте только самые важные данные. Плюс, может быть какие-то из них можно записывать при работе программы, а не при ее завершении?

Ваше приложение не соответствует требованию 4.1

Возможная причина: отсутствие страницы политики конфиденциальности.

Эта ошибка возникает в том случае, когда вы публикуете приложение, которому требуется доступ в интернет. В таком случае, вы должны обязательно добавить в само приложение страницу с описанием того, что вы не передаете данные третьим лицам, а также создать подобную страницу в интернете и указать во время публикации приложения ссылку на нее. И, конечно, если вы каким-либо образом публикуете данные — вы должны запрашивать подтверждение на это.

Ваше приложение не соответствует требованию 6.8

Возможная причина: изменение скриншота в графическом редакторе.

На самом деле не только это причина возникновения данной ошибки. Конечно, всем известно, что разработчик не может редактировать скриншоты (потому делают их обычно с помощью Имитатора, причем, не меньше, чем 1366×768, иначе отказ), зато может добавить одно свое промо-изображение, если хочет. Однако, есть еще одна причина возникновения этой ошибки — подпись скриншота (или сам скриншот) не на заявленном языке.

И снова пример «из жизни»: Когда добавлял приложение, публиковал его через Chrome. Залил скриншоты на нужном языке (это был русский; кстати, скриншоты должны быть на языке описания!), а когда писал описание оно не сохранялось. Не знаю, почему. Вместо «Игровой процесс» сохранялось «Buh» и выдавалась ошибка. Видимо, там как-то через JS ловились клавиши при вводе, или что-то подобное. Как бы вы поступили на этом месте? Я просто взял, и написал: «Gameplay». Это и послужило причиной отклонения приложения.

Вот тут стоит отметить важный факт: публикуйте свое приложение при помощи Internet Explorer. Это своеобразная гарантия того, что в панели разработчика все сработает именно так, как вы ожидаете. В нем фраза «Игровой процесс» сохранилась с первой же попытки.

Послесловие

Напоследок, хочется пожелать вам прежде всего публиковать качественные приложения, а компании Microsoft более объективно оценивать приложения, а не гнаться за их количеством. Сейчас в Магазине очень много низкокачественных продуктов, которые представляют собой обычный копи-паст из Википедии, да еще и криво оформленный. Пример:

Скриншот Магазина

И таких приложений не два. Именно это от женщины-разработчика и у нее таких уже аж 75 штук. Все оформлены абсолютно одинаково, сделаны всего на одном шаблоне и не несут никакой смысловой нагрузки.

Аналогичные приложения есть и от какого-то другого разработчика. У него их 69. Смысл тот же самый, только группы иностранные и плитки оформлены более красиво. Очень жаль, что компания не следует первому же пункту своих правил:

1.1 Приложение должно быть уникальным, креативным и полезным для пользователя, с версиями на всех языках и для всех рынков, которые оно поддерживает

Очень надеюсь, что среди Хабражителей нет подобных „разработчиков“.

И чуть-чуть о том, что опубликовал я

Пентамино

Поскольку я тоже начинающий разработчик, решил попробовать себя в Game Development и первое моё творение — реализация старой игры Пентамино́. В данный момент в последнем выпуске совсем немного уровней (только классические), но уже реализовано неплохое управление.

Я буду рад, если Хабражители попробуют игру, оценят, оставят отзыв в Маркете и, может быть, чего-нибудь посоветуют. В планах пока:

  • Добавить статистическую систему а-ля Angry Birds, чтобы последующие уровни/режимы открывались после прохождения предыдущих.
  • Добавить подсказки.
  • Добавить новые режимы: Мини (5×5 и подобные), Для детей (фигурки животных и т. п.).

Приложение переведено на 4 языка: Русский, Украинский, Английский и Испанский. В будущем планирую добавить еще Французский и Немецкий. К слову, основной «фишкой» которая радует именно меня, является тот факт, что в игре не используются изображения. Все, что там есть, нарисовано встроенными средствами XAML.

Кликни и скачай

Если найдете какие-нибудь ошибки или недочеты — напишите в личные сообщения, пожалуйста.

Спасибо за внимание.

ссылка на оригинал статьи http://habrahabr.ru/post/204278/