Search
Write a publication
Pull to refresh
0
0
Fury @Fury

User

Send message

Как мы в Канадские акселераторы подавались и интервью проходили

Reading time8 min
Views15K
Краткая предистория

Кто-то из Вас помнит о запуске первого интернет-магазина со случайными ценами в сентябре — пост на хабре.

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

Прошло 5 месяцев со дня открытия

Результаты и предпосылки к инкубации, которые у нас имелись:


Почему акселерация и почему Канада

Уже первый наш клиент принес доход, у нас есть работающая бизнес-модель, возможность перенаправлять некоторое количество средств с предыдущего бизнеса в новый проект. Наверняка, мы могли бы обойтись без инкубации. Но, рынок e-commerce очень стремительный, а идея случайных цен и монетизации тороговой площадки через рекламу хоть и новая, но достаточно сильно подвержена клонированию. В США торговые площадки собирают очень большую комиссию за свои услуги, а у нас этот рынок уже сильно обвален, хотя и очень молод. Перенос бизнеса в Канаду открыл бы для нас рынок Северной Америки. Более того, я и мой новоиспеченный партнер Коля давно задумывались о переезде в Канаду. Весной прошлого года там запустили Startup Visa Program, а осенью вступили в действие изменения позволяющие перенести свой бизнес в Канаду путем вступления в один из 6 инкубаторов. Мы просмотрели все доступные варианты и остановились на двух:
Читать дальше →

IdBasedLocking

Reading time3 min
Views5.5K
У Java отличная поддержка параллелизма (concurrency) и блокировки (locking) — возможно, самая лучшая из тех, что предлагают современные языки. Кроме того, что в самом языке есть встроенная поддержка синхронизации, существует целый ряд полезных утилит на основе AQS framework. К ним относятся CountDownLatches, Barriers, Semaphores и прочие. Однако часто встречается ситуация, не поддерживающаяся напрямую: когда надо блокировать доступ не к конкретному объекту, а к идее этого объекта.

Читать дальше →

Tronsmart T1000 — «лёгкий» медиаплеер для трансляции изображения на большой экран

Reading time5 min
Views69K
image
После довольно удачного старта на рынке мини-компьютеров китайская компания Tronsmart осваивает новый вид медиаплееров, которые предназначены для трансляции изображения с экрана смартфона/планшета/компьютера на экран телевизора. Данные устройства отличаются простотой использования и весьма демократичной ценой. В сегодняшнем обзоре мы познакомимся с моделью под названием Tronsmart T1000.
Читать дальше →

Мобильная разработка для СМИ. Азы, которые надо знать

Reading time6 min
Views8.1K
В декабре 2013 года мы выступили на конференции Mobile Developer&Business Day с докладом «Особенности разработки мобильных приложений для СМИ». В презентации мы обобщили опыт EastBanc Technologies в разработке мобильных приложений для российских и американских СМИ, попытались коснуться всех важных вещей, которые когда-то стали для нас открытием. Мы хотим донести до читателей, как важно понимать, для чего вы делаете приложение: как поддержку бренда или расширение канала сбыта, т.к. по-нашему мнению для разработчика очень важно осознавать, за какую задачу он взялся и адекватно оценить ресурсо- и времязатраты.

В данной статье мы «беллетризировали» доклад. Надеемся, что-то полезное для себя найдут как начинающие разработчики, так и бывалые.

Читать дальше →

Умный дом. Конкретная реализация

Reading time4 min
Views116K
Добрый день, уважаемое сообщество!
В своих предыдущих статьях я рассказывал о том, как делаю у себя умный дом. С тех пор прошло уже достаточно большое количество времени и я достаточно серьезно продвинулся как в оборудовании, так и в софте. Думаю, что эту очередную статью можно смело называть «Умный дом v3» :)
Читать дальше →

Инструментарий фондового рынка: Производные инструменты

Reading time6 min
Views53K
image

Не так давно на Хабре был опубликован интересный пост «Как IT-специалисту сохранить свои финансы», к которому, в частности был прикреплен не менее интересный опрос. Его результаты показательны – большинство хабрапользователей не отличает фондовый рынок от рынка FOREX (хотя на самом деле различия есть), и даже идея инвестировать свои сбережения в стартапы куда более популярна, чем стать инвестором на бирже. Первое место, с огромным отрывом занимают банки, и это также можно понять – к сожалению, в нашей стране не так много людей действительно обладает обширными финансовыми знаниями, а в таком случае депозит в банке – это, пожалуй, лучшее, что можно придумать, чтобы сохранить свои средства.

Мы, однако, считаем, что это не единственный способ сохранить и преумножить свои финансы, поэтому продолжаем свою серию образовательных постов, посвященных фондовому рынку. И сегодня мы поговорим о том, без чего сложно себе представить функционирование любой биржевой площадки – производных инструментах.
Читать дальше →

Как перейти от Java к Scala в вашем проекте

Reading time7 min
Views32K
Всем привет.
Периодически от Java-разработчиков, которые узнали о существовании Scala, звучат вопросы «Как начать использовать Scala в существующем Java-проекте? Сложно ли перейти от одного к другому? Много ли времени это займет? Как убедить начальство?» В нашем проекте именно такой переход и происходил, на сегодняшний день практически весь проект уже на Scala, поэтому решил поделиться рецептами и впечатлениями.

С чего все началось, оно же «А зачем оно мне вообще надо?»:
  1. хотелось изучить что-то новое и полезное в производстве;
  2. надоело писать много букв на Java, но и радикально переписывать все, скажем на Python, совсем не хотелось;

С учетом таких желаний выбор пал на обзор альтернативных JVM-based языков.
После обзора остановились на Scala. Понравились компактный синтаксис, strong typing, возможность писать в ОО-стиле и заявленное хорошее взаимодейтствие с Java-кодом в обе стороны. Тот факт, что Scala уже активно используют такие крупные компании, как Twitter, LinkedIn, Foursquare и так далее, внушил определенную уверенность в будущем языка.
У нас уже имелся проект на Maven с юнит-тестами на JUnit, поэтому важно было легко включить Scala без существенных затрат на адаптацию инфраструктуры.
Итак, по порядку.
Почитать по порядку

Масштабировать просто

Reading time8 min
Views21K
От B2C-порталов ожидается прежде всего масштабирование. К сожалению, масштабирование слишком часто объявляется вопросом Технологии — достаточно выбрать модную технологию и все проблемы решены. То, что это не так, может проявиться, позднее всего, уже в production mode (на рабочей системе).
Вместо того, чтобы махать технологической булавой, расскажу о том, как при помощи продуманной архитектуры и сознательного отказа от модели данных разработать высоко доступный (highly available), масштабируемый (scalable) портал. Первая часть опишет общие концепты, а возможные сценарии и их решения последуют.
Читать дальше →

Еще раз об архитектуре Android приложения или джентльменский набор библиотек

Reading time6 min
Views57K
Вот надумал написать обзор библиотек с помощью которых легко и удобно писать приложения под Android.
Список вырисовывается такой:

Если заинтересованны прошу под кат.
Читать дальше →

Автоматическая генерация ресурсов для приложений Android с помощью скриптов для Adobe Photoshop

Reading time11 min
Views12K

Предисловие


При разработке для Android, как известно, нужно закладываться на то, чтобы создавать ресурсы подо все возможные пиксельные плотности. Изначально таких плотностей было только три: ldpi, mdpi и hdpi. Однако прогресс на месте не стоит: пиксельные плотности экранов растут до невменяемых значений, а Google тем временем тихой сапой приставляли буковку «x» и уже добрались до xxxhdpi, получив в итоге целых шесть основных конфигураций экрана. Это означает, что если играть по правилам, то нужно сохранять полдесятка ресурсов на одну иконку. Но и это еще не все, ведь некоторые ресурсы имеют несколько различных состояний. Кнопки на панели действий (action bar) имеют два состояния, и это еще куда ни шло, но обычные кнопки их имеют куда больше.

Выходов несколько: можно замучить художника, можно плюнуть на поддержку многих плотностей и надеяться, что система их как-нибудь сама отмасштабирует, а можно воспользоваться тем, что программисты любят делать больше всего: автоматизацией. Есть разные инструменты, которыми можно осуществить это дело. Самым продвинутым, наверное, является Android Asset Studio. Это очень толковый инструмент, но, разумеется, иконки там рисуются только для стандартных случаев, а, если нужно сделать кнопки со своими уникальными стилями, он тут нам не помощник. И вот тут нас выручит поддержка скриптов в небезызвестном инструменте: Adobe Photoshop. Ради того, чтобы упростить весь процесс, ваш покорный слуга для себя написал несколько инструментов на подобный случай и теперь делится ими с читателями. Как их использовать, и как они работают, я и описываю далее. Все исходники лежат на BitBucket, а здесь я расскажу основные моменты и покажу некоторые хитрости работы со скриптами Photoshop, которые могут быть неочевидны начинающим. На всякий случай отмечу, что писал их для Photoshop CS6.
Читать дальше →

Десятка лучших консольных команд

Reading time2 min
Views198K
imageВ данном посте я расскажу о наиболее интересных командах, которые могут быть очень полезны при работе в консоли. Однозначных критериев определения какая команда лучше другой — нет, каждый сам для своих условий выбирает лучшее. Я решил построить список команд на основе наиболее рейтинговых приемов работы с консолью от commandlinefu.com, кладовой консольных команд. Результат выполнения одной из таких команд под Linux приведен на картинке. Если заинтересовало, прошу под кат.
Узнать больше

Lock-free структуры данных. Основы: Модель памяти

Reading time18 min
Views103K

В предыдущей статье мы заглянули внутрь процессора, пусть и гипотетического. Мы выяснили, что для корректного выполнения параллельного кода процессору необходимо подсказывать, до каких пределов ему разрешено проводить свои внутренние оптимизации чтения/записи. Эти подсказки – барьеры памяти. Барьеры памяти позволяют в той или иной мере упорядочить обращения к памяти (точнее, кэшу, — процессор взаимодействует с внешним миром только через кэш). “Тяжесть” такого упорядочения может быть разной, — каждая архитектура может предоставлять целый набор барьеров “на выбор”. Используя те или иные барьеры памяти, мы можем построить разные модели памяти — набор гарантий, которые будут выполняться для наших программ.

В этой статье мы рассмотрим модель памяти C++11.
Читать дальше →

Lock-free структуры данных. 1 — Начало

Reading time12 min
Views153K

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

Читать дальше →

Эффективная реализация Readers–writer lock на основе «Interlocked Variable Access»

Reading time4 min
Views10K

Вступление


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

В ходе данной публикации я хочу поделиться идеей реализации хорошо известного примитива синхронизации readers-writer lock на основе, так называемых атомарных операций. Как известно, readers-writer lock призван решать проблему синхронизации доступа к разделяемому ресурсу таким образом, чтобы избегать одновременных чтения и записи, но, при этом позволять параллельное чтение сколь угодно большому количеству потоков.
Читать дальше →

Рекомендации по использованию SQLite на мобильных устройствах

Reading time4 min
Views29K
В буржунете есть интересный документ по оптимизации SQLite на платформе BlackBerry. Однако, идеи, которые в нем содержатся, вообще говоря, относятся к любой мобильной платформе. Мы решили развить этот список и создать эдакий эталонный текст в рунете с набором полезных, вводных советов для программирования SQLite под мобильными устройствами. Принимаем ваши предложения в комментариях.

Читать дальше →

Новинки приложений Nokia World

Reading time4 min
Views15K
С пятницей, Хабр!

Как вы помните, на прошлой неделе в Абу-Даби состоялась конференция Nokia World, на которой мы представили ряд новых устройств, включая наш первый планшет Nokia Lumia 2520, а также «большие» смартфоны Lumia 1520 и Lumia 1320. В предыдущем обзоре с конференции мы уже немного затронули тему новых приложений, и сегодня хотим остановиться на этом поподробнее.



А начнем мы с…
Читать дальше →

Custom Annotation Preprocessor — создание на базе Android-приложения и конфигурация в IntelliJ IDEA

Reading time4 min
Views16K
Всем привет!

Недавно передо мной встала задача написания своих кастомных аннотации и их обработки во время компиляции. Первый вопрос, который я себе задала: с чего начать? После анализа я решила поделиться с вами ответом на этот вопрос.
Думаю, рассказывать, что такое аннотации в java и с чем их едят, не имеет смысла, так как каждому юному программисту это знакомо ( а кому не знакомо, может прочесть самостоятельно). К тому же на хабре есть интересная ознакомительная статья об этом явлении.
Но сегодня я хочу поговорить именно о кастомных аннотациях в Android-приложении, которые обрабатываются в процессе компиляции проекта вашим собственным обработчиком и о автогенерации классов на их основе. А так же, по ходу дела, расскажу вам, как быстро все настроить в IDEA (сама я пользуюсь версией 12.1, возможно в других есть отличия).
Читать дальше →

Как это сделано: парсинг статей

Reading time4 min
Views82K


Для меня всегда было некоей магией то, как Getpocket, Readability и Вконтакте парсят ссылки на страницы и предлагают готовые статьи к просмотру без рекламы, сайдбаров и меню. При этом они практически никогда не ошибаются. А недавно подобная задача назрела и в нашем проекте, и я решил копнуть поглубже. Сразу скажу, что это «белый» парсинг, вебмастеры сами добровольно пользуются нашим сервисом.
Читать дальше →

Внешние ресурсы в Android приложениях

Reading time1 min
Views7.6K
Продолжаем публиковать e-Lectures — небольшие видеолекции от наших мобильных разработчиков.



Ссылки на исходники из видео:
github.com/stepango/metroTheme
github.com/stepango/DownloadableThemes

В этом видео Степан stepango Гончаров расскажет об одном из возможных способов добавления поддержки внешних тем в Android приложения.
На платформе Android сложно угодить дизайном всем пользователям, а множество предустановленных тем сильно раздувает приложение. Как достойно выйти из этой ситуации, предоставив возможность сторонним разработчикам очень легко создавать свои уникальные стили для приложения? Один из возможный вариантов в нашем видео.
Подписывайтесь на наш Хабра-блог (и на youtube-канал), чтобы не пропустить следующие видеолекции о мобильной разработке.

Видео: полный цикл разработки на JavaScript

Reading time1 min
Views50K
Здравствуй, Хабр!

В этой открытой лекции я попытался сжато рассказать и показать полный цикл (full stack) разработки веб-приложений на JavaScript.

Начнем мы с короткого введения в язык, потом в двух словах поговорим о клиентской части, в частности, об MVC фреймворках вроде Angular.js, после чего перейдем на серверную часть: Node.js и MongoDB. В конце обсудим возможность автоматизации разработки и сборки проектов с помощью Grunt.js.



Скачать слайды и исходные коды.

Лекция была записана в офисе компании Chocolife, зрители – разработчики этой компании.

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity