На Online.ua стартовал сервис Виртуальная клавиатура

Портал Online.ua запустил новую услугу Виртуальная клавиатура.

Наш новый сервис — это инструмент для набора текста на самых популярных языках мира: русском, украинском, английском, белорусском, немецком, французском, итальянском и испанском. Вместе с тем, на нашей клавиатуре есть и привычные для всех варианты двуязычных раскладок: русско-английская, англо-русская, украино-английская и англо-украинская. Читать далее На Online.ua стартовал сервис Виртуальная клавиатура

Online.ua обновил сервис Авто

Портал Online.ua подготовил подарок всем автолюбителям. Теперь в разделе Авто http://auto.online.ua/ вы найдете еще больше интересной и полезной информации об автомобильном мире.

С помощью нашего обновленного сервиса вы всегда будете в эпицентре событий на мировом рынке автомобилей. Читать далее Online.ua обновил сервис Авто

Online.ua запустил сервис Правила дорожного движения (ПДД)

Портал Online.ua создал новый бесплатный сервис для всех водителей. Мы собрали для вас в одном разделе правила дорожного движения Украины, России и Беларуси с последними откорректированными изменениями, знаками и обозначениями.

Правила дорожного движения Украины

Правила дорожного движения России (РФ)

Правила дорожного движения Беларуси

С помощью нашего нового сервиса вы можете повторить или выучить онлайн правила дорожного движения, а также поделиться ссылкой на интересующий спорный вопрос относительно ПДД (например, на форум).

19 мая пройдет Lviv eCommerce Forum

На  субботу, 19 мая, во Львове намечено проведение конференции  Lviv eCommerce Forum, в которй примут участие собственники интернет- магазинов, а также лица, заинтересованные в  электронной коммерции. Ожидается, что порядка 300 участников из разных регионов Украины примут участие в этом мероприятии.

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

На конференции будут обсуждаться вопросы продвижения интернет-магазина, потенциала электронной торговли в Украине, аутсорсинга в интернет-магазине, правильной организации доставки и многое другое.

В конференции примут участие Ярослав Максимович, владелец и инвестор порядка 10 интернет-проектов и бывший собственник auction.ua, Андрей Тимчишин-Валевский, владелец ShoeShoe.com.ua, Макс Лукьяненко, являющийся совладельцем dvorniki.ua | rayban.ua, интернет-маркетолог KP Media Виктория Бондарь и другие – всего порядка 40 докладчиков.

Новая лаборатория тестирования IT-стартапов «Geex Lab» была совместно запущена Павлом Сиделевым и Денисом Довгополым

Лаборатория «Geex Lab», специализирующаяся на быстром прототипировании IT-проектов, была официально запущена под непосредственным руководством Павла Сиделева и Дениса Довгополого. Лаборатория уже сейчас предлагает начинающим бизнесменам, не имеющим собственного штата работников, протестировать идеи IT-сервисов.

Сегодня в штате «Geex Lab» работают перспективные архитекторы IT-систем, программисты, системные администраторы и тестировщики. Проект насчитывает более 20 специалистов самого широкого профиля, а при обсуждении заказа создается отдельная группа, наиболее удовлетворяющая всем требованиям клиента.

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

Помимо перечисленных услуг, «Geex Lab» может легко выполнять функции дистрибьютера или паблишера мобильных приложений на Windows Phone, AppStore или Android.

По заверению Дениса Довгополого, создателя GrowthUP, любая компания, обратившаяся за помощью в «Geex Lab», сможет получить квалифицированную поддержку и консультацию. Лаборатория тщательно проанализирует предоставленную конфиденциальную идею, выбрав оптимальную финансовую модель развития бизнеса и продвижения определенного продукта.

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

Лаборатория работает с компаниями-заказчиками за долю в проекте или исходя из механизма convertible loan, предусматривающего оценку проведенной работы в деньгах, оформляемых в качестве долга перед «Geex Lab». Когда проект начинает реализовываться и у него появляется инвестор, разработчик получает заранее оговоренную сумму или процент от сделки. Стоимость услуг «Geex Lab» оценивается, исходя из перспектив проекта и языка реализации (так, например,  проект на PHP будет гораздо дешевле, чем на Java).

Таким образом, лаборатория «Geex Lab» – перспективный проект, предоставляющий спектр самых инновационных услуг по продвижению инновационных бизнес-идей.

Android. Особенности работы с SQLite

В настоящее время все большую популярность набирает OS Android. С ростом популярности платформы расширяется и круг задач, которые пользователь хочет решить здесь и сейчас. Среди задач встречаются такие, которые требуют обработки большого объема данных за приемлемое время, так, например, полнотекстовый поиск по базе. В качестве базы данных на OS Android используется SQLite. Для работы с SQLite существует пакет android.database.sqlite. Однако данный пакет содержит только набор инструментов для работы с базой. Он не является фреймворком, регламентирующим подход к реализации доступа к данным.

На данный момент Google не предоставляет подробных рекомендаций по работе с базой данных. В официальной документации приводится лишь 2 простых примера, использующих SQLite (“NotePad” и “SearchableDictionary”). Поэтому программисты сами вырабатывают собственные подходы к реализации работы с базой данных, и, как результат, возникает множество различных способов – зачастую неверных.

Выработать правильный подход к реализации достаточно сложно. Основными проблемами являются слабо документированные и неочевидные особенности в классах пакета android.database.sqlite.

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

database is locked – возникает при многопоточной записи в базу.

database is closed – может возникнуть при работе с базой из разных частей программы, например, Activity и Service.

corrupted database – возникает, если файл базы данных был испорчен либо пользователем, либо при неожиданном прерывании записи в базу (выключение телефона, ошибка OS, нехватка пространства, битые сектора на SD карте и т.д.)

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

Рассмотрим подробно как причины возникновения и возможные «неявные» проявления данных проблем, так и методы их решения.

Проблема “database is locked” (она же многопоточность)

У программистов часто возникают вопросы “Как лучше работать с SQLiteOpenHelper“. Действительно – поскольку к слою доступа к данным может обращаться практически любая часть программы (сервис, presenter, widget … ), то SQLiteOpenHelper должен быть доступен везде, где есть Context. Также встает вопрос, стоит ли для каждой части программы создавать свое соединение с базой, увеличится ли от этого скорость выполнения запросов. Возникают вопросы о многопоточном доступе к базе, и, конечно, о блокировках при записи.

Прежде всего, нужно отметить, что блокировки в SQLite выполнены на уровне файла. Это гарантирует блокировку для изменений из разных потоков и соединений. Причем читать базу может много потоков, а писать только один. Более подробно о блокировках в SQLite можно узнать из документации SQLite. Нас же интересует именно API, предоставляемое OS Android.

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

Если вы пишете из двух потоков одного соединения, то один поток будет ждать, пока закончит писать другой.

Если вы пишете из двух потоков разных соединений, то произойдет ошибка – ваши данные не запишутся в базу, а приложение вылетит с SQLiteDatabaseLockedException.

Становится очевидным, что приложение всегда должно иметь только один экземпляр SQLiteOpenHelper (именно открытого соединения), иначе в любой момент может возникнуть SQLiteDatabaseLockedException.

Разные соединения в одном SQLiteOpenHelper

Всем известно, что SQLiteOpenHelper имеет 2 метода предоставляющих доступ к базе getReadableDatabase() и getWritableDatabase(), соответственно для чтения и записи данных. Однако в большинстве случаев реальный сonnection один. Более того, это один и тот же объект:

SQLiteOpenHelper.getReadableDatabase()==SQLiteOpenHelper.getWritableDatabase()

Это означает, что нет никакой разницы, с помощью какого из этих методов читать данные. Но гораздо важнее другая недокументированная особенность – внутри класса SQLiteDatabase есть собственные блокировки – переменная mLock. Блокировки для записи на уровне объекта SQLiteDatabase, а поскольку на чтение и запись экземпляр SQLiteDatabase один, то чтение данных тоже блокируется. Особенно хорошо это видно при записи большого объема данных в транзакции.

Помимо внутренних блокировок класс SQLiteDatabase имеет еще одну интересную особенность: данный класс (до API 11) позволяет создавать транзакции только в режиме exclusive transaction. Из-за этого при активной работе с БД могут возникать задержки. Рассмотрим пример приложения, которое при первом старте должно в фоне скачать большой объем данных(~7000 строк содержащих BLOB) и сохранить их в базу. Если данные сохранять в транзакции, то сохранение занимает ~45сек, но при этом пользователь не может пользоваться приложением, поскольку все запросы на чтение заблокированы. Если же данные сохранять маленькими порциями, то процесс обновления данных затягивается на достаточно долгий срок (~10-15 минут), зато пользователь может все это время без каких-либо неудобств безболезненно пользоваться приложением. “Палка о двух концах” – или быстро, или удобно. Причины данной проблемы и некоторые выводы более подробно освещены в статье Kevin Galligan “Android Sqlite Locking”.

Как же бороться с данным “стандартным” поведением? В новых версиях Android, начиная с API 11, Google уже начали исправлять часть проблем связанных с работой SQLiteDatabase – были добавлены такие методы как:

beginTransactionNonExclusive() – создает транзакцию в “IMMEDIATE mode”.

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

isDatabaseIntegrityOk() – проводит проверку целостности базы данных.

Более подробно описано в документации.

Однако для старых версий Android тоже необходим данный функционал.

Решение

Прежде всего, нужно отключить блокировки и разрешить чтение данных в любой ситуации.

SQLiteDatabase.setLockingEnabled(false); Отменяет использование внутренней блокировки запросов – на логическом уровне java класса (не связано с блокировками в терминах SQLite).

SQLiteDatabase.execSQL(“PRAGMA read_uncommitted = true;”); Позволяет читать данные из кеша. По сути, изменяет уровень изоляции. Данный параметр должен устанавливаться для каждого соединения заново. Если соединений несколько, то оказывает действие только на то соединение, которое вызвало данную команду.

SQLiteDatabase.execSQL(“PRAGMA synchronous=OFF”); Изменить способ записи в базу – без “синхронизации”. При выключении данной опции, база данных может быть повреждена при неожиданном сбое системы, либо отключении питания. Однако согласно документации SQLite некоторые операции при выключении данной опции выполняются более чем в 50 раз быстрее.

К сожалению не все PRAGMA поддерживаются в Android, например “PRAGMA locking_mode = NORMAL” и “PRAGMA journal_mode = OFF” и некоторые другие не поддерживаются. При попытке вызвать данные PRAGMA приложение вылетит с ошибкой.

В документации для метода setLockingEnabled сказано, что данный метод рекомендовано использовать лишь в том случае, если вы уверены, что вся работа с базой ведется из одного потока. Нам придется самим гарантировать, что в единицу времени будет выполняться только одна транзакция. Также вместо транзакций по умолчанию (exclusive transaction) нужно использовать immediate transaction. В старых версиях Android (ниже API 11) нет возможности создать immediate transaction через java обертку, однако сам SQLite данный функционал поддерживает. Для инициализации транзакции в immediate mode нужно выполнить следующий SQL запрос напрямую к базе данных,- например через метод execSQL.

SQLiteDatabase.execSQL(“begin immediate transaction”);

Поскольку инициализируем транзакцию мы прямым запросом, то и завершать её нужно аналогично: SQLiteDatabase.execSQL(“commit transaction”);

Осталось только реализовать свой TransactionManager, который будет инициировать и завершать транзакции нужного типа. Задача TransactionManager – гарантировать, что все запросы на изменение (insert, update, delete, DDL запросы) происходят из одного потока.

Проблема “database is closed”

При работе с базой из одной Activity через SQLiteOpenHelper, очевидно, что открывать базу нужно с открытием Activity, а закрывать при закрытии Activity. Но если с базой работает одновременно несколько Activity, несколько Service и часть данных расшаривает ContentProvider, то возникает вопрос: “когда следует открывать и закрывать соединение с базой?”. Если открывать и закрывать соединение после каждого запроса,- то скорость обращения к базе упадет в разы, а если открывать при старте приложения и закрывать при выходе,- то непонятно, когда мы выходим из приложения (а если сервис еще работает, или провайдер еще используется – остается только метод Application.onTerminate()). Но не один из этих методов не является верным. Соединение с базой может закрыться автоматически при следующих условиях:

Если несколько Activity независимо друг от друга будут открывать новые соединения, то может возникнуть ошибка, описанная в предыдущем пункте “database is locked”.

Если открывать соединение с базой при старте приложения и закрывать при Application.onTerminate(), то соединение с базой может закрыться само при очередном вызове Cursor.getCount() или Cursor.onMove(). Если детально просмотреть исходный код соответствующих классов, то видно, что при определенной комбинации условий в конечном итоге будет вызван метод SQLiteDatabase.onAllReferencesReleased(), который вызывает нативный метод dbclose(). Более детально данная проблема освещена здесь, последовательность вызовов и необходимые условия описаны тут.

Возможно, это одна из причин, по которой “ManagedCursor” объявили “Deprecated”.

Данная проблема широко известна и для ее решения предложено множество способов.

Вариант 1

При каждом обращении к базе проверять,- закрыта база или нет, и если закрыта, то переоткрывать её заново.

public synchronized SQLiteDatabase getReadableDatabase() {

SQLiteDatabase db;

try {

db = super.getReadableDatabase();

}

catch (SQLiteException e) {

Log.d(Constants.DEBUG_TAG, e.getMessage());

db = reopenDatabase(dbFile.getAbsolutePath(), null);

}

return db;

}

У данного метода есть очевидный недостаток – если мы обратились к базе, а затем сохранили ссылку на уже открытый экземпляр, и используем полученный экземпляр, не вызывая SQLiteDatabase.getReadableDatabase(), то данный метод не сработает.

Вариант 2

Принудительно добавить фиктивную ссылку на базу и держать её пока база используется SQLiteClosable.acquireReference();

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

Вариант 3

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

Вариант 4

Использовать ContentProvider для доступа к базе. Причем желательно использовать именно один провайдер – это легко реализовать, поскольку ему можно добавить неограниченное количество Uri. Суть заключается в том, что ContentProvider сам следит за состоянием базы данных. А вопрос о том, когда базу пара закрывать ложится на OS – она сама удалит старые провайдеры из памяти и вернет их при первой необходимости.

Про работу с ContentProvider подробное описание есть на официальном сайте.

Проблема “corrupted database”

На Android телефонах очень мало места отводится под приложения и это место нужно беречь, иначе пользователь пожертвует вашим приложением в пользу очередной игрушки. Почти все приложения используют базу для хранения данных, и если база слишком большая, то её очень желательно хранить на SD карте. Старые версии Android (2.2 и ниже) не позволяют создавать базу на SD карте через стандартные средства SQLiteOpenHelper, но это можно обойти, если использовать AndroidConnectionSource от ORMLite.

Нужно помнить – все, что видно пользователю может быть удалено. Пользователь может удалить или иным образом испортить файл базы данных, может вынуть SD карту из телефона, и многое другое. Но база может быть испорчена не только пользователем. Телефон – устройство с ненадежным питанием – часть данных может не записаться (особенно актуально – если отключено журналирование), база может быть повреждена при скачивании или при использовании предустановленной базы и т.д. Более подробно, о причинах порчи базы можно узнать из статьи “How To Corrupt An SQLite Database File”.

Если разработчик никак не реализовал алгоритм восстановления базы, то Android сам создаст базу заново. Но бывают случаи, когда базу можно восстановить. Самый простой способ – запросить данные из всех доступных таблиц и вставить в новую базу. Но чаще достаточно выполнить команду “VACUUM” – данный метод пересоздает базу и восстанавливает максимум данных.

Очень часто есть необходимость создать приложение с предустановленными данными. Для этого можно собрать готовую базу и положить в папку raw, а в момент установки приложения база будет скопирована на устройство. Файл с базой лучше расположить именно в папке raw. Папка assets кажется более удобной, поскольку подвергается сжатию, но из данной папки невозможно получить данные объемом более 1 мб ([см. здесь), и поэтому приходится разбивать базу на отдельные файлы по 1мб – что весьма неудобно. Важно, что базу всегда нужно собирать именно на эмуляторе самой младшей из поддерживаемых версий. Поскольку если собрать предустановленную базу на Android 2.3, то на Android 2.2 возникнет ошибка “corrupted database”, хотя на устройствах 2.3 и выше база будет работать корректно.

Оптимизация запросов

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

Не нужно писать запросы, которые возвращают более 1000 строк или данные объемом более 1мб. Всегда используйте оператор limit. Если запрос возвращает более 1000 строк, то будет выдано предупреждение в лог, либо произойдет падение приложения – это зависит от количества свободной памяти и самого устройства. Если нужно отображать длинный список есть два решения:

a) нужно запрашивать список частями, а затем соединять при помощи android.database.CursorJoiner.

b) Реализовывать авто дополняемый список на интерфейсе (список с догрузкой).

Один запрос выполняется значительно быстрее, чем 2 отдельных. Лучше использовать join, но выполнить 1 запрос. Очень важен порядок ограничений на join – чтобы не получилось декартово произведение, из которого потом выбираются строки по оператору where.

Если нужно что-то изменить в базе – делайте это в транзакции. Это не только гарантирует целостность данных, но и значительно ускорит выполнение задачи. Дело в том, что при любом изменении в базе данных рядом с файлом базы создается файл изменений. Если вы делает 100 insert, то 100 раз создастся и удалится файл изменений, а если 100 insert находятся в транзакции, то файл создастся всего 1 раз.

Если нужно создать таблицу из уже существующих данных, то используйте INSERT AS SELECT (не выполняйте отдельные INSERT) – это значительно ускорит время выполнения.

Если вы получили из базы много данных за раз, и этот “большой” запрос повторяется не часто, то очищайте ненужную память SQLiteDatabase.releaseMemory().

В операторе where нужно сначала писать более простые условия.

SELECT * FROM tablename WHERE col1 LIKE ‘%string%’ AND col2 = 123456

работает в 3-4 раза медленнее чем

SELECT * FROM tablename WHERE col2 = 123456 AND col1 LIKE ‘%string%’

Правильное индексирование таблиц ускоряет выполнение запросов в 5-7 раз. Индексировать нужно в первую очередь те поля, по которым идет join, затем те по которым идет поиск. Причем лучше указывать направление работы индекса – например:

CREATE INDEX index_name ON table_name (column_name ASC).

Для больших таблиц с поиском используйте FTS3 это значительно ускоряет текстовый поиск по таблице. Вместо LIKE используйте MATCH, но помните что по умолчанию MATCH работает как поиск слова целиком, а не подстроки. Описание FTS3.

Заключение

В данной статье перечислены основные проблемы при работе с SQLite в Android. К сожалению, в API еще существует очень много пробелов, для решения ряда вопросов отсутствует необходимая документация, а также в процессе работы периодически выявляются ошибки в самой системе. Но радует тот факт, что с каждой новой версией Android API становится все гибче и полнее, ошибки исправляются, а документация расширяется.

Новый сервис «Битрикс24» – первый социальный

Компания «1С-Битрикс» начинает открытое тестирование нового облачного сервиса для совместной работы «Битрикс24», в основе которого лежит концепция социального интранета. Это первый российский SaaS-сервис, в котором объединены классические рабочие инструменты и социальный формат коммуникаций.

Читать далее Новый сервис «Битрикс24» – первый социальный

Online.ua запустил сервис Расписание

Портал Online.ua предлагает вашему вниманию новый сервис Расписание http://raspisanie.online.ua/. Читать далее Online.ua запустил сервис Расписание

Online.ua представил сервис Календарь


Портал Online.ua запустил для вас новый удобный сервис Календарь праздников http://calendar.online.ua/. Читать далее Online.ua представил сервис Календарь

Портал Online.ua запустил сервис SMS поздравления


В преддверии светлого праздника Пасхи портал Online.ua дарит вам новую услугу — SMS поздравления http://sms.online.ua/. Читать далее Портал Online.ua запустил сервис SMS поздравления

Бесплатное изучение английского с lingualeo.ru


Онлайн-сервис LinguaLeo.ru стал доступен Интернет-пользователям в бета-версии еще в марте. Данный проект создан для того, чтобы пользователи могли быстрее пополнять свой словарный запас и знакомиться с языком на практике, в чем им будут активно помогать такие мультимедийные ресурсы Глобальной сети, как Vimeo, YouTube, LibriVox, как DotSub, Google.

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

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

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

Вывод: ресурс lingualeo.ru – настоящая находка для тех, кто хочет изучать «живой» английский.

Конференция AGILEBASECAMP расширяет свой формат!


25 и 26 мая, в городе Харькове пройдет масштабный софтверный кемп, по аналогии с морскими учениями CREW DRILL. Два дня будут насыщены докладами экспертов, воркшопами и вдохновляющими блицами. Также будут организованы фасилитируемые дискуссии, демонстраци от практиков и два полномасштабных мастер-класса. Читать далее Конференция AGILEBASECAMP расширяет свой формат!

Интервью с представителем компании UpSale


Компания UpSale появилась на рынке современных компаний, предоставляющих услуги в сфере интернет-маркетинга, относительно недавно. Чем Вы завоевывали свою аудиторию партнеров?

«Завоевали» нашей комплексностью и нашим пониманием логики развития любого бизнеса.

Представьте, что весь механизм продвижения бизнеса в интернете – это поезд.

Контекстная реклама, SEO-оптимизация, предоставляемая партнеру нашей компанией – это тепловоз, который тянет за собой все вагоны. Но, когда к такому устройству мы подключаем SMM, этот состав превращается в скоростной поезд.

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

Такой индивидуальный подход и комплексность решений, наряду с правильным (адекватным) ценообразованием и стали тем определяющим фактором, который позволил нам «завоевать» нашу аудиторию партнеров.

Интернет-маркетинг – сфера услуг, которая постоянно терпит какие-то изменения. Компаниям необходимо постоянно быть в курсе всех новинок, рыночных предложений и, наконец, чем-то принципиально отличаться от своих конкурентов. Что UpSale может дать своему партнеру такого, чего нет ни у одного из ее аналогов?

UpSale – единственная компания на рынке России, которая предоставляет весь комплекс услуг для продвижения бизнеса в интернете. Начиная от создания сайтов и заканчивая продвижением в социальных сетях. Вместе с тем, с недавнего времени мы предлагаем для наших партнеров еще одно преимущество – страховые гарантии. Теперь, заказывая услуги в направлении социальных медиа , партнер может быть на 100% уверен в результате.

Расскажите подробнее об этом нововведении. Как это работает?

Страховые гарантии – это уникальная практика на рынке соц.медиа. Могу с уверенностью сказать, что никто из наших конкурентов не предлагает таких условий сотрудничества.

Работает это следующим образом: в договоре закрепляется определенное количество показателей, которые UpSale обязуется выполнить, а также стоимость работ за 3 месяца.

Страховая гарантия составляет 30% от общей стоимости, то есть это сумма которая может быть возвращена партнеру, если мы не достигаем обещанных показателей. Наши партнеры могут быть уверены, что мы замотивированы также финансово выполнить наши обязательства.

Чем обусловлено возникновение практики выплаты гарантий в компании UpSale?

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

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

Разработка мобильных приложений для бизнеса. Взгляд компании-разработчика


11 июля 2008 года компания Apple объявила о запуске магазина приложений App Store – обновления для iTunes Store. У пользователей iPhone и iPod появилась возможность устанавливать через магазин проверенные приложения сторонних разработчиков. Читать далее Разработка мобильных приложений для бизнеса. Взгляд компании-разработчика

Українські розробники роблять ставку на Windows 8


Більшість розробників бачать хороші перспективи в розробці застосунків під нову операційну систему.

Київ, Україна – 28 березня 2012 — Розробка застосунків під Windows 8 створює новий ринок і відкриває великі перспективи для українських розробників. Таку думку висловили розробники в ході опитування, що пройшло на найбільшій в Україну технічній конференції Microsoft SWIT у Києві. 49% опитаних вважають ринок дуже перспективним, більше 33% бачать хорошу можливість показати свої застосунки на міжнародному ринку. При цьому близько 7% вже планують зробити розробку під Windows 8 своєю основною спеціалізацією. Майже половина опитаних планує почати розробку застосунків під Windows 8 протягом півроку, ще 15% — відразу після виходу комерційної версії ОС.

«Розробники сприймають Windows 8 дуже позитивно. Ми сподіваємося, що вже найближчим часом в Windows Store з’являться перші програми, розроблені в Україні. Варто відзначити, що кілька застосунків українських авторів вже готові до публікації, і були успішно продемонстровано на конференції», — зазначив Андрій Терехов, директор департаменту стратегічних технологій «Майкрософт Україна».

Понад 22% опитаних розробників вважають, що нова версія операційної системи Windows буде стрімко набирати популярність після виходу комерційної версії, більше 25% відзначили, що вона в підсумку зможе потіснити конкурентів на ринку планшетів.

«Вихід Windows 8 — це нова епоха, нова величезна ніша для компаній. Вже більше десятка років ринок не відкривав таких великих перспектив для розробників. Наша компанія покладає на цю платформу дуже великі надії — ми отримуємо новий популярний сегмент мобільних планшетних рішень. Також відкривається ринок індивідуальних продажів — Windows Store, що дає можливість кожній компанії, що створює програмне рішення, робити масові продажі у всіх країнах світу. Ми вже підготували ряд експертів в області розробки рішень у стилі Metro і плануємо вийти на ринок із низкою своїх продуктів», — зазначив Володимир Ліщинський, генеральний директор компанії Digital Cloud Technologies.

В інтерактивному опитуванні, яке на замовлення «Майкрософт України» проводила компанія TouchPoll, взяло участь більше 220 розробників.

Перша книга для розробників на платформі Windows 8

Зорієнтуватися розробникам в новій сфері допоможе книга «Windows 8 для C# розробників», написана в співавторстві співробітником «Майкрософт України» Сергієм Байдачним, а також автором одного з перших українських застосунків для Windows 8 Сергієм Лутаєм. Це перший в світі довідник для розробників на платформі Windows 8.

Про конференцію Microsoft SWIT

Це найбільша в Україні технічна конференція, яка вже другий раз збирає розробників та ІТ-професіоналів. Минулого року темою конференції стали хмарні технології. У 2012 році ключові теми події — розробка для Windows 8 і Windows Phone. Конференція, що пройшла в Києві 22-23 березня, зібрала близько 800 розробників та ІТ-спеціалістів з усієї України, а також із-за кордону.

Первый в Украине «Ускоритель» новых идей!


27 марта 2012, Киев – Впервые в Украине в рамках чемпионата UA Web Challenge при поддержке бизнес-инкубатора IT Launchpad стартовал конкурс стартап-проектов «Ускоритель». Читать далее Первый в Украине «Ускоритель» новых идей!

$300 тыс — лучшим блогам и сообществам от LiveJournal


По словам руководителя Интернет-проекта LiveJournal Russia Ильи Дронова, стало известно о выдаче грантов для поддержки интересных, но ранее не опубликованных для всеобщего чтения дневников, а также сообществ, как уже существующих, так и новых. Об этом сообщает всем Ridus, ссылаясь на блог топ-менеджера проекта. На гранты руководством журнала будет выделено 30 млн, для приобретения виртуальных «жетонов» (стоимость которых в сумме будет эквивалентна $300 тыс.), которые могут быть использованы для дальнейшего продвижения, оформления, для оплаты услуг платных сервисов, подарков среди участников внутри LiveJournal и т.д..
Более того, таким журналам будет оказана маркетинговая поддержка. Будет создана и специальная страница, на которой можно будет заполнять заявки о получение грантов.
Илья Дронов сообщил, что пользователи, начиная с сегодняшнего дня, могут предлагать на выбор кандидатов — журналы, которые, по их мнению, заслуживают такой маркетинговой поддержки. Это можно будет делать при помощи комментариев.

YouTube приобрела стартап RightsFlow для определения авторства выкладываемого медиа-контента


Новость о том, что руководство компании Google настроено ввести методику денежных выплат за транслирование клипов на YouTube, никого не удивила. Для этого руководству компании пришлось приобрести стартап RightsFlow, на который будет взвалено задание определять подлинность авторства тех музыкальных треков, которые были выгружены пользователями на своих аккаунтах в YouTube.
Эта информация стала известна благодаря сообщениям издания The Guardian, которое сослалось на топ-менеджмент YouTube. Благодаря новой технологии лицензирования, видеосервис YouTube собирается упростить систему защиты авторских прав и одновременно свести количество претензий относительно «пиратских» копий до минимума. Ведь отсутствие такой профессиональной помощи в недавнем прошлом становилось неоднократным нарушением авторских прав при размещении пользователями различного рода видеоклипов любимых исполнителей или при размещении собственного медиа-контента на страницах видеосервиса.
Что же, теперь компания Google даст возможность музыкантам и группам не просто зарабатывать через свои аккаунты на YouTube, осуществляя активную продажу билетов и сувениров, но и обеспечит многих из них достойным заработком от продаж своих треков через сервер Google Music.
По предварительным данным стало известно, что купленный проект имеет у себя в базе свыше 30 миллионов музыкальных треков для возможности распознавания оригинала среди пиратских копий. Что же касается финансовой стороны сделки, то она пока для всех остается тайной.

Google Chrome – новый лидер рейтинга браузеров?


Google Chrome – уже первый в Рунете.
По данным софт-каталога www.izone.ru, в конце 2011 года наибольшее количество посетителей сайта пользуются браузером Google Chrome. Их доля составила уже 33,5%. На втором месте по популярности у читателей www.izone.ru – Opera (29,5%), а на третьем – Mozilla Firefox (22,1%). Internet Explorer получил только четвертое место со своими 11,8% посетителей. Показательно, что Google Chrome, использовавшийся в конце 2010 года всего 14% посетителей, увеличил свою долю до 33,5%. Напротив, крайне популярный в России и странах СНГ браузер Firefox потерял второе место, скатившись с 28% (данные за 4 декабря 2010 года) до 22% (данные за 4 декабря 2011 года).

Зафиксирован значительный рост Google Chrome и в мировом рейтинге.
Собираемая статистическими сетевыми службами информация также свидетельствует о тенденции к потере доли рынка большинством браузеров, кроме Google Chrome, который стремительно набирает популярность. Более того, по итогам ноября 2011 года, Google Chrome оказался на втором месте в общемировом рейтинге браузеров портала StatCounter.
Пока отрыв от ближайшего конкурента, которым является Mozilla Firefox, незначителен. Однако, глядя на скорость, с которой растет популярность сравнительно нового браузера, становится ясно, что потенциал его роста еще не исчерпан, поэтому в войне браузеров возможно появление нового лидера.

Каковы причины этого явления?
Возможно, по отдельности они бы не оказали такого влияния на популярность браузеров, но случилось так, что все ошибки своих конкурентов, случившиеся в этом году, команда разработчиков Google Chrome сумела использовать с максимальной выгодой для своего детища. Об этом более подробно читайте в статье «Google Chrome – новый лидер рейтинга браузеров?» в Базе знаний портала www.izone.ru.

О софт-каталоге izone.ru
Каталог программ http://www.izone.ru ведет свою историю с 2006 года и на сегодняшний день является одним из крупнейших в Рунете софт-каталогов. За это время на сайт было добавлено порядка 10 000 полезных программ — только легальное программное обеспечение, поставляемое от производителей. Бесплатно скачивая софт с сайта izone.ru, пользователь гарантированно получает качественные программы без вирусов, без необходимости регистрации, без SMS и без навязчивой рекламы.

Ссылки:
Софт-каталог izone.ru: http://www.izone.ru/
Полная версия статьи «Google Chrome – новый лидер рейтинга браузеров?»: http://www.izone.ru/data/google-chrome-novyj-lider-rejtinga-brauzerov.htm
Скриншот izone.ru: http://www.izone.ru/pub/izone_screen.jpg

Контакты для связи:
Владелец проекта: Николай Романов, http://www.izone.ru/mail_form/

AgileBaseCamp Conference: From Idea To Product


Экспорт ресурсов VS Создание продуктов — две полярные ментальности в сфере программной разработки. Аутсорсинг помогает отрасли идти в ногу с мировыми технологиями и подходами в работе. Однако, мы хотели бы сфокусироваться именно на продуктовой разработке, как процессу создания ценности.

Для кого эта конференция?
● Разработчиков, тестировщиков, специалистов по UI-UX, QA
● Менеджеров продуктов и топ-менеджеров продуктовых компаний
● Гиков и технологических предпринимателей

Какие темы будут затронуты в программе?
● Формирование идеи продукта
● Изучение пользователей и проектирование взаимодействия
● Инженерные и технологические аспекты разработки
● Построение команды и процесса создания ценности

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

Что делает этот кемп не похожим на другие?
● Мы приглашаем спикеров с опытом создания продуктов, участия в стартапах или ведения собственного бизнеса
● Мы исследуем интересы нашей аудитории и стараемся осветить популярные темы и ответить на острые вопросы

Зарегистрироваться >
Только первые 30 мест по цене 650 грн.! Ранняя цена регистрации — 750 грн.
Приглашаем выступить >
ЭКСПЕРТОВ программной разработки
Владение современными технологиями и эффективными процессами разработки — важные факторы успеха проектов.
Мы приглашаем экспертов Agile, Lean, UX, XP, QA, других прикладных дисциплин и технологий поделиться своим опытом.
РУКОВОДИТЕЛЕЙ продуктовых компаний
Культура технологического предпринимательства требует поддержки со стороны успешных компаний.
Вы можете присоединиться к секции вдохновляющих блиц-докладов или выступить на одном из основных потоков.
Ищем партнеров >
Спонсорская поддержка помогает нам проводить качественные мероприятия для развития инженерной и предпринимательской культуры программной разработки.
Нашим партнерам мы предоставляем площадку для контакта с активными представителями сообщества, представления и позиционирования компании. Кроме этого, партнеры получают специальные условия на участие своих сотрудников.
Приглашаем Вас принять участие в конференции в роли докладчика,участника, либо партнера. И с нетерпением ждем встречи!
Докладчики конференции:
Mark Phillips, CША
Марк успешно руководит технологической и программной разработкой на протяжении многих лет. Он занимал руководящие должности в различных технологических компаниях Силиконовой долины: Insession, Angara, General Magic и Knowmadic. Является обладателем 15-ти патентов.
Анна Плосконос, Германия
Изучая методологию инноваций в Стенфорде, провела исследование на тему “How design thinking can be taught in multidisciplinary environments”. Участвовала в создании дизайн-школы HPI School of Design Thinking, сооснователа компанию «Design Thinking Lab»
Андрей Бибичев,Россия
Занимается обработкой изображений и Natural Computer Interface в должности технического директора iPi Soft. До этого 10 лет проработал в области заказной разработки. Внедрял гибкие подходы разработки и технические практики eXtreme Programming.
Daniel Lewis, UK
Даниэл Льюис имеет более чем 30 летний управленческий опыт в крупных компаниях, таких как Nestle, General Motors, SABMiller и Heineken. Жил и работал в шести странах, участвовал в кросс-культурных проектах. Эксперт в области управленческих и лидерских навыков. Опытный фасилитатор и коуч.

Конференция по продуктовой разработке пройдет 28 января 2012 г., Киев
Организатор:

Генеральный партнер:

Google Schemer: неприятный сюрприз для Foursquare

Недавно в Интернет просочилась информация о серьезных намерениях компании Google покорить рынок геолокационых сервисов. Уже сейчас готовится новый проект под названием Schemer, который, как предполагается, в будущем станет конкурентом стремительно набирающему популярность сервису Foursquare.
Веб-приложение Google Schemer стартовало совсем недавно, и пока его работа ограничивается только инвайтами (т.е. своего рода приглашениями), которые могут поступать только из определенного списка городов, в частности, из городов Америки. Так комментирует работу нового проекта Venturebeat.
Реализация проекта уже давно входила в планы компании, но до настоящего времени все держалось в секрете. Исходя из тех данных, которые все же просочились в Интернет, скорее всего, речь пойдет о старте социального геолокационного сервиса, который сможет составлять и хранить списки мест, людей и активностей с привязкой к местоположению. На сегодняшний день информации об интегрировании нового проекта с социальной сетью Google+ не поступало.
Что же, вполне логично и допустимо, что Google Schemer будет достойным соперником в борьбе за каждого нового пользователя, ведь один из конкурентов — проект Gowalla — уже практически сошел с дистанции – его закрытие намечается на январь 2012 г. По информации, которая стала известна, разработчики Gowalla перейдут в команду Facebook.

Компания eBay ожидает доход в $5 млрд от продаж через мобильные устройства

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

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

Если верить результатам продаж 3-го квартала 2011 г., то они составили 600 тыс. покупок, осуществленных пользователями мобильных телефонов. К тому же, компания eBay запустила оффлайн-продвижение для m-commerce проектов. Первый такой магазин, основанный на базе QR-кодов, открылся в английской столице.

К сведению: eBay стала собственником компании, работающей в сфере электронной коммерции, на украинском рынке.

В социальной сети Google+ появилось руководство пользователя, рекомендованное для знаменитостей и политиков

Наиболее популярными среди политиков двух стран — Украины и России — являются социальные сети ВКонтакте и Facebook, в то время как для их коллег с запада больший интерес представляет социальная сеть Google+, в которой недавно появилось специальное руководство для чиновников государственных структур, а также для представителей политических партий и различного рода движений.

Речь идет о руководстве, с помощью которого вышеупомянутые категории граждан могут ознакомиться с правилами создания личной страницы в Google+, касается это и правил общения в сети, а также способов привлечения избирателей, возможности проведения агитации на страницах соцсети. К тому же, в данном руководстве представлены примеры страниц политиков и сенаторов Америки, давно и активно использующих возможности соцсети Google+ для массового привлечения избирателей.

Это руководство не первое и не единственное на страницах Google+ . Подобные рубрики уже были представлены для знаменитостей различных сфер общества и для их официальных представителей, есть рекомендации и для СМИ, спортсменов, НГО и даже для университетов.
Компания Google постоянно радует своих пользователей всевозможного рода новинками и сюрпризами. Так, напомним, что недавно был произведен запуск собственных инструментов измерения активности каждого пользователя, а также предложен ряд возможностей для загрузки качественных фотоснимков пользователей.

ЯТрейдер — тестирование альфа версии проекта

Приветствую Вас трейдеры, инвесторы и все кто интересуется фондовым рынком.

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

Цель ЯТрейдер — предоставить наиболее полный обзор рынка брокерских услуг СНГ, стать полноценной площадкой для общения брокеров, трейдеров и инвесторов. Создание закрытого саморегулирующего сообщества трейдеров фондовых рынков.

Проект содержит наиболее полную информацию обо всех брокерских компаниях СНГ и предоставляет серию сервисов для брокеров, инвесторов, активных трейдеров и новичков фондового рынка.

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

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

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

Мы надеемся, что Вам понравится проект и Вы станете полноценным членом нашего, пока еще маленького, сообщества.

Удачи и попутного тренда!

С Ув. команда ЯТрейдер.

Курсы в школе английского языка ELC LTD в Киеве и Харькове

Многие помнят те времена, когда изучение английского языка напоминало восхождение на заснеженный восьмитысячник, доступное только избранным. Эти избранные получали должное – становились переводчиками, преподавателями, получали престижные на то время профессии. Но каким трудом давалось все это? Ведь занятия шли по академическим учебникам, где грамматика, фонетика объяснялись лингвистическими терминами, слова изучались методом «зубрежки» всем известных «топиков», написанием постоянных диктантов. А лексический материал подавался так, что было трудно понять, зачем такие обороты или такие специфические выражения вообще нужно изучать? Зато после такой школы можно было смело тягаться с британцами в письменном английском. Да, именно в письменном – потому что фонетических навыков вырабатывалось мало из-за того, что центр обучения был в письменных занятиях. Устный же английский нуждается в постоянной актуализации и практике. На сегодняшний день курсы английского языка Киев предлагают очень много коммуникативных методик – если вам нужно отправиться в туристическую поездку и только, то это – лучший способ быстро приобрести определенные навыки. Если же вы хотите серьезно углубиться в язык, то вам больше подойдет уровневая методика, где от самого простого уровня, и до самого высокого, но в неизменно интересной и доступной форме, вы сможете овладеть иностранным языком. Мы рады, что как киевские, так и курсы английского языка Харьков имеют преподавателей очень высокой квалификации, а также с нами работают носители языка из англоязычных стран.

Для начала каждый студент обучается с русскоговорящим преподавателем, затем основные занятие в группах ведут иностранцы, кроме грамматики, которую объясняют преподаватели на русском языке, чтобы материал был полностью ясен. Далее – грамматические конструкции отрабатываются на этих занятиях, плюс на основных практических занятиях по учебнику с иностранцем. Это увлекательно и интересно – иметь возможность не только овладеть языком, но и углубиться в культурную среду, пообщаться с представителем этой культуры. Поверьте, после такой практики вам совсем не страшно будет общаться с людьми за границей, ведь этот барьер будет уже снят.