Fully automated MVNO. Is it real?

Рубрика: Mobile | 18 April 2007, 16:34 | Vadim Voituk

Наткнулся днями на такое.

Называют это возможностю создать своего виртульаного мобильного оператора (Mobile Virtual Network Operator – MVNO).
Насколько я понял тут идет речь об аутсорсинге контент-провадерских услуг.
Причем не в принятом нынче примитивном виде суб-контент-провайдерства, а-ля “давайте мы ваши картиночки и мелодии продадим по нашим каналам сбыта, а вы с нам поделитесь доходом”.

Тут концепцию можно развивать куда интереснее:

  • Хочешь продавать свои Java приложения на своем же ресурсе – зашел в web-морду, потыкал кнопочки – есть метод заказа по СМС, есть wap- промо-сайтик и ссылка для загрузки, есть PayPerclick-оплата, есть раздача демо-версии направо-налево …
  • Хочешь свой wap-портал – разворачиваешь DNS на наше оборудование, ставишь галочки – хочу погоду, хочу расписание кинотеатров для Токио и для Киева, хочу банерную рекламу каждого раздела по очереди, и не забываем про формочку Feedback-а и поиск… Добавляем ко всему этому свои шаблоны и вуаля!
  • Хочешь просмотр видео, продажу MP3-музыки, изображений – ставь галочку, грузи контент(или выбирай из доступного) – а платформа сама за тебя подумает и проведет адаптацию этого контента – все довольны все счастливы.
  • Хочешь мобильное комьюнити, со своим файлообменником, и внутренним мессенджером over Wireless Village или XMMP – нефиг делать, только галочку поставь. И за премиум аккаунты в этом комьюнити денюжку не забывай брать с самых ярых юзеров.
  • Хочешь промо-акцию с кодами на крышечках от кока-пива? Вгружай коды, выбирай механику акции (благо таких сценариев раз-два и обчелся) и беги искать крышечку чтоб стать первым абонентом…
  • и тут Остапа понесло….

А самое главное…
И за все это дело не забудь платить некую абон-плату и часть дохода от трафика (wap, SMS, другое, – нужное подчеркнуть).

В результате такая себе коробочная версия контент-провайдера.
Почему бы и нет? Есть же коробочные версии всяких VASP-подуктов, причем иногда даже с 19-дюймовой железякой поставляются.
А все это к тому, что Sonopia работает в Украине тоже, и возможно в обозримом будущем небольшие контент-провадеры начнут “потерпать” от нехватки мелкого заказчика, какой предпочтет не самый гибкий, но дешевый mainstream, более дорогой разработке “под ключ”.

Остается открытым уже юридический вопрос: КТО БУДЕТ ОТВЕЧАТЬ ЗА КАЧЕСТВО И ЗАКОННОСТЬ КОНТЕНТА?
С одной стороны права на контент каждый получать не будет – слишком пыльное это дело, потому прийдется либо брать контент без спросу, либо арендовать у провайдера.
Ввиду того что большие контент-провайдеры своей репутацией дорожат – с пиратами сотрудничать не захочет никто. Следовательно контент прийдется брать у контента провайдера (опять же за деньги). А т.к. контент принадлежит контент провадеру – то и за его качество и законность он и отвечает.

Кстати тут интереснее об этом.

Updated: А вот уже сделаны первые шаги.

JasperReports 1.3.2

Рубрика: JasperReports | 18 April 2007, 08:26 | juriy

30-го марта вышел новый релиз JasperReports http://www.jasperforge.org/index.php?option=com_content&task=view&id=286&Itemid=214 . Кроме исправления ошибок и улучшения существующей функциональности JasperReports 1.3.2 представил две новых языковых конструкции $P!{…} и $X{…}.
[Далее...]

Quicklet 3

Рубрика: Java, Задачки | 16 April 2007, 18:05 | juriy

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

[java]public class Test {
public static void testSwitch(int arg) {
switch (arg) {
case 1:
System.out.print(“1 “);
default:
System.out.print(“default “);
case 2:
System.out.print(“2 “);
}
System.out.println();
}

public static void main(String[] args) {
testSwitch(1);
testSwitch(2);
testSwitch(3);
}
}[/java]
[Далее...]

J2ME dev story

Рубрика: Development, Java, Mobile | 14 April 2007, 13:10 | juriy

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

Я нашел папку, в которую сбрасывал скриншоты для художников, еще когда работал в компании Attack Software разработчиком мобильных игр.
Скриншотов накопилось немало. Получилась такая-себе маленькая история разработки: от первых шурупчиков движка до законченного (но, увы, так и не выпущенного в свет) ныне успешно продающегося проекта.

Я собрал скриншоты и дополнил их своими комментариями. Вот что у меня получилось:

[Далее...]

Quicklet 2

Рубрика: Java, Задачки | 11 April 2007, 13:55 | juriy

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

[java]

public class Test {

  private static void checkMe(String a, String b) {
    if (a == b)
      System.out.print("The same ");
    else
      System.out.print("Not the same ");

    if (a.equals(b))
      System.out.println(" and equals ");
    else
      System.out.println(" and not equals ");
  }

  public static void main(String[] args) {
    String a;
    String b;

    a = new String ("Are they the same?");
    b = new String ("Are they the same?");
    checkMe(a, b);

    a = "Not a chance?";
    b = "Not a chance?";
    checkMe(a, b);

    a = new String(b);
    b = new String(a);
    checkMe(a, b);
  }
}

[/java]

Что будет напечатано после выполнения фрагмента?
[Далее...]

Quicklet

Рубрика: Java, Задачки | 9 April 2007, 10:04 | juriy

Небольшой QuickLet для разминки мозгов. Что будет напечатано в результате выполнения фрагмента?

От меня лично просьба: сначала напишите ответ в комментах, а потом проверяйте компилятором :-)

[java]

package ua.net.lab.test;
public class Main {
  class Foo {
    public String myName;
    public Foo(String name) {
      myName = name;
    }
  }

  public Foo test() {
    Foo result = new Foo("Starting");
      try {
        System.out.println("Try Block");
        result = new Foo("TRY");
        return result;
      } finally {
        System.out.println("In finally block");
        result = new Foo("FINALLY");
      }
  }

  public static void main(String[] args) {
    System.out.println((new Main().test()).myName);
  }
}

[/java]

1. Будет ошибка на этапе компиляции: для блока try не описан ни один catch.
2.
Try Block
TRY

3.
Try Block
In finally block
FINALLY

4.
Try Block
In finally block
TRY

Groovy + JSON + Prototype in Action

Рубрика: Development, Groovy, Java, JavaScript/Ajax, MySQL | 6 April 2007, 18:53 | Vadim Voituk

Дабы у читателя не возникало мысли, что Groovy подходит только для написания простеньких утилит и prebuild-скриптов предлагаю рассмотреть пример создания серверного приложения на Groovy с использованием коктейля Web2.0-ппопулярных технологий.

[Далее...]

Переезд CVS-сервера

Рубрика: Development | 5 April 2007, 16:27 | Vadim Voituk

Недавно с периодичностью 2-3 дня 3-жды прийшлось перевозить некоторые проекты с одного CVS-сервера на другой.
Казалось бы что может быть проще: за-commit-ил изменения, и переместил директорию с из одного CVSROOT в другой, выполнил checkout.
Но действующие проекты так не перенесешь – их нельзя удалить а потом с-checkout-ить.

Потому небольшой скрипт для замены значения CVSROOT в дейтсвующем проекте не выполняя checkout:

replace old-cvsroot new-cvsroot -- `find ./ -name 'Root' -print`

Он ищет в проекте все файлы Root и изменяет прописанный в нем CVSROOT на новый.
Все достаточно банально.

Вот интересно, как такое провернуть с Subversion?

Зачем обновлять свое резюме

Рубрика: LinkedIn, Работа | 4 April 2007, 10:36 | Vadim Voituk

Уже около 2-х лет я не ищу работу.
Конечно регулярно просматриваю на вакансии на developers.org.ua, но это скорее из любопытства, чем в результате направленного поиска.
Тем не менее собственное резюме я держу в актуальном состоянии. – “Зачем?”

[Далее...]

Google не знает географии?

Рубрика: Google | 3 April 2007, 07:59 | Vadim Voituk

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

google-no-map.PNG

[Далее...]