Google картонки

Всем привет! Сегодня поговорим про виртуальную реальность 🙂

Все, наверное, уже слышали, а может даже и пробовали Oculus Rift. Если вкратце, то это «шлем» виртуальной реальности. Мало того, что он выводит картинку в 3D, так еще и реагирует на повороты головы пользователя. В общем, как только я об этой штуке узнал, сразу захотел ее себе.

Чуть позже Google решили продвинуть подобные технологии в массы и выпустили Google Cardboard. Это что то вроде бюджетной версии Oculus, где в качестве шлема выступает картон с 2 линзами, а в качестве экрана — смартфон пользователя. Эта новость меня приятно удивила, но на тот момент заказать такие — было большой проблемой. Сделать самому — возможно, но нужны линзы, а я понятия не имел где их можно взять.

Под катом — подробности про мои Google Cardboard.

Читать далее «Google картонки»

Поделиться:

Презентация про Java Garbage Collector

Duke GC

Всем доброго времени суток! На этот раз я расскажу немного про то, как я готовил презентацию о сборке мусора в Java. Ниже представлена сама презентация, там же можно открыть комментарии докладчика (рекомендую их открыть, так как я немного увлекся с сарказмом, когда готовил ее). Под катом — небольшая история ее подготовки и демонстрации.

Читать далее «Презентация про Java Garbage Collector»

Поделиться:

Обновление дизайна WhatsCook

Заголовок WhatsCook

Всем привет!

Давно уже ничего не писал, но сегодня у меня отличное настроение и я решил поделиться одной хорошей новостью. Буквально пару дней назад я закончил работу над обновленной версией мобильного приложения под android — «WhatsCook«. Ниже пара скриншотов новой версии, под катом — чуть-чуть подробнее.

Новый дизайн WhatsCook
Новый дизайн WhatsCook

Читать далее «Обновление дизайна WhatsCook»

Поделиться:

WhatsCook вышел в Play Маркет!

Наконец свершилось это долгожданное событие! Мы закончили тестировать наше замечательное приложение и опубликовали его для всего мира в Play Маркете.

В конце концов, у нас набралось ~15 бета-тестеров. Было выпущено и протестировано 4 бета-версии приложения. К нашему общему счастью, багов было мало, внедряли, в основном, улучшения.

whatscook
Так сейчас выглядит приложение

Что добавили в финальную версию:

  • Картинки рецептов теперь грузятся сразу в нужном разрешении
  • При обновлении страницы рецепта — если изменений в рецепте не было, то он не перезагружается
  • Поправили внешний вид, чтобы название и кнопки были читаемы на любом фоне
  • Оптимизировали работу с кешем
  • Поправили верстку

Еще раз размещаю ссылки: сайт, приложение.

Поделиться:

WhatsCook

hackathon_whatscook

Итак, я созрел для рассказа о приложении, которое мы разрабатывали на нашем хакатоне. Мы разрабатывали WhatsCook! Это приложение позволяет полностью каждый день наслаждаться вкусным ужином, совершенно не обременяя себя выбором блюда.

Рецепт дня
Рецепт дня
Избранное
Избранное

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

Читать далее «WhatsCook»

Поделиться:

О хакатоне

hackathon

Хакатон успешно завершился. Расскажу что же там происходило, и какой опыт я получил. За день до хакатона Леха (мой босс) попросил Катю (наш тестировщик/составитель ТЗ) напечь немного блинчиков и сам тоже напек. Мы собрались на работе в субботу в час дня. Когда все опоздавшие дошли до работы, пошли пить «чай» с блинами. Блинчики были очень вкусные 🙂

Итак, мы немного почаевничали, поболтали, обсудили некоторые вопросы по проекту и начали его реализовывать. Я сразу же столкнулся с кучей проблем, с которыми встречаются все новички. Основная проблема в начале работ у меня была с подключением сторонних библиотек. Кратко перечислю, что я использовал:

  1. Библиотеки Support от Google для toolbar’а, cardview и recyclerview
  2. Android Annotatios для упрощения работы с потоками, activity, Rest’ом
  3. Spring Android REST Template — для REST запросов
  4. Jackson — для десериализации JSON
  5. Lombok — для избавления от кучи getter’ов и setter’ов в коде
  6. EventBus — для простой реализации callback’ов от сервисов
  7. SnappyDB — для кеширования

Итак, какой я получил опыт:

  • Невозможно создать за 1 сутки завершенное, отлаженное приложение (тем более, если нет опыта в этой сфере)
  • Я могу работать 18 часов в сутки (24 часа — 4 на сон — 2 на перекусы)
  • Работать над новым приложением в новых условиях — очень интересно 🙂
  • После такого маленького промежутка на сон, я стал соображать еще медленнее чем до него, хоть и стало по-легче.
  • Мне понравилось программировать под Android

Что у нас в итоге получилось? Сервер на java, работающий с клиентами через REST и JSON. Web-клиент, состоящий из одной HTML странички с javascript’ом (данные получаются с сервера через AJAX и динамически вставляются на эту же страничку). Недоделанный клиент для Android (с версии 4.1), который писал я. Недоделанный клиент по iOS. Примерно 60 страниц контента.

К сожалению, мы еще не выпустили наш продукт в мир, поэтому пока не скажу что именно мы делали 🙂

Поделиться:

Импровизированный хакатон

hackathon

В эти выходные наша команда собирается устроить «хакатон». Мы хотим запилить готовый и рабочий проект (если быть точным, минимальный рабочий продукт) ровно за одни сутки. Пока что я не могу сказать что это за проект, но могу рассказать чем примерно мы будем заниматься. У нас планируются следующие составляющие:

  1. Сервер
  2. Админка для сервера
  3. Непосредственно сайт
  4. iOS приложение
  5. Android приложение

Мне повезло, и я буду делать то, что давно хотел попробовать. Это Android приложение 🙂 Последние 2 дня по чуть-чуть изучаю различные практики по разработке для Android. Пытался подружить мою IDEA под Ubuntu с Gradle, но он ни в какую не хочет работать. Пришлось устанавливать Android Studio (кто не знает — это та же идея, но чуток допиленная гуглом в сторону разработки под дроиды). Как мне показалось, эта студия — тормозит… По крайней мере в IDEA CE я такого не замечал. Далее небольшой список Android-библиотек, которые я планирую использовать.

Читать далее «Импровизированный хакатон»

Поделиться:

Работа над статьей для хабры

Я давненько уже подумывал написать несколько статей для хабры по проблемам, с которыми сталкивался во время работы над текущим проектом. И вот делать мне стало совсем нечего, до выхода GTA 5 на PC оставалось еще больше месяца и я взялся за первую статью. Последние 2 вечера посветил описанию проблемы использования ленивой загрузки Hibernate’ом списка объектов разных типов с классом родителем. А точнее, проверку типов объектов из этого списка. И, конечно, способа ее решения. Кому интересно как в моей команде с этим боролись, прошу: ссылка на статью.

Поделиться: