ScobleCam on UStream.tv

I just watched Robert Scoble’s video-audio-live-stream , which was being broadcast from his car. He was using his laptop, a Verizon wireless card, a webcam, inbuilt-microphone and UStream account.
Check out the screenshot.
UStream looks pretty interesting to me, it has live chat and different social-networking features (embed, comment-engine etc).
BTW! Motvik, a startup based in India, would allow you to use your camera-phone as webcam over Bluetooth. Now imagine, how UStream and Motvik would go together?

Dekoh vs Apollo: Marketing strategy?

What is Dekoh?

Directly from Dekoh website:-

Pramati announces Dekoh, a new desktop platform for applications that can deliver integrated experience of web and desktop

I know the company (Pramati Technologies) for some time (through some ex-colleagues at Adobe who came from this company in 2004).

I know these guys have been doing good in Java/J2EE community and contributing in some of the specifications. I respect them for that.

Lately, some of the posts (listed below), from Dekoh guys, sounds like a marketing strategy, where they are trying to get popular by using words like “Adobe”, “Apollo”, “Flash”?

Some of their posts:-

It’s good idea to create products, come up with new things and give different solutions to developers/end-users. Competition is always good, though in this case I feel Dekoh and Apollo are two different things.

Anyway, I don’t get following points:-

  • How can someone compare things without even understanding or knowing a technology (Adobe Flash/Apollo)?
  • How an engineer from same company starts talking about Apollo-going-Yahoo!-Widget-Engine-way? and sells the idea of Dekoh?
  • How can one company use other company’s marketing effort to get some focus?
  • Why can’t you create your own identity without using other brands in any form (comparison, rant etc) in your marketing/PR agenda? Is Dekoh feeling insecure?

Not only that, I wonder if they have convinced some guys to write about Dekoh vs Apollo story on blogsphere (readwriteweb example, there might be more I don’t know).

I personally don’t like such strategy and didn’t like when Microsoft did something similar in past.

A good product/technology would eventually would be known and used. We need to leave things users/community to decide/use/review/conclude?

I have not seen Dekoh, except screenshots and I don’t remember of having said anything against it. I just feel uncomfortable, when I read such posts.

Technorati tags: adobe, apollo, dekoh, marketing, tactic

Gmail: usability/accessibility issue

Gmail uses mouse-down event instead of click (mouse-button-release) at many places (Compose Mail, Inbox, Chats etc) in it’s frontend.

I face following problems because of their wrong choice of event (mouse-down instead of click):

  • I can’t select text while in list view. For example, if I want to select the sender’s name or subject, instead it opens the mail thread.


    \
  • If mouse-button is pressed by mistake on any of links (Compose Mail, Inbox etc), associated action takes place and I am forced to click on browser’s back button (or equivalent) to get back to previous state (screen/view). I don’t get a chance to change my mind by releasing mouse-button outside of link area.

Technorati tags: gmail, usability issues

Twitter Vulnerable to SMS and Caller ID Spoofing

I found (via bluesmoon) an interesting article on Twitter vulnerability.

Technorati tags: twitter, vulnerability, sms, spoofing

Which Creative Commons license would you choose for your blog?

I have been planning to publish content under Creative Commons. I am thinking to choose either ‘by’ or ‘by-nc-sa’ license, little confused because of existing content.

I have some code published earlier under BSD, MIT and different license. Is applying creative-commons going to affect that?

Thought, I would seek for some suggestions by asking everyone. Which one would you choose for your blog? And why?

Thanks in advance.

Update: Creative Commons doesn’t recommend applying it’s licenses on code. It solves my problem, I guess I can choose one of relevant licenses now.

Technorati tags: creative commons, license

Not yet optimized for Firefox

I opened sms.ac in Firefox and noticed this:

I have not seen such a nice screen to warn users about browser-compatibility. It’s always better to let user know of such things rather than saying nothing.

Creating Passionate Users - Reverse engineering passion

I watched the video-recording (101 MB .ogg file) of Kathy Sierra’s talk from LCA ‘07. It’s really good and I learnt many things, which would surely me in getting better at things (building software/products or communities).

Thanks to Gopal for sharing the link.

I noted a few things (points, quotes, words etc etc).

Some of the attributes of passionate users:

  • Evangelize
  • Learn
  • Spend Money
  • Spend time
  • Connect with others
  • Show off / take pride (tshirts, bags etc)
  • Elevate the meaning

Some quotes/sentences used in the talk:

  • Where there is passion, there is a user kicking ass.
  • It’s not about the tools you build, it’s about what your users do with the them.
  • Being better is better.
  • Being better is higher-resolution experience.
  • Make right things easy and wrong things hard.
  • Suck threshold vs Passion threshold.

Some screenshots of video can be seen at:

http://www.flickr.com/photos/abdulqabiz/tags/kathysierra/

Technorati tags: kathy sierra, passionate, users, lca07, talk, video

Google! My Maps - What is future of wikimapia?

Google maps has introduced a new feature called My Maps which allows users to customize/create maps by adding placemarks, lines and shape. It’s a useful feature, however, I have some doubts.

I am just wondering, what is future of Wikimapia now? In Google My Map, I can see some problems which are redundancy and accuracy of data. Wikimapia was a collaborative environment which means it allowed others to rate/review any changes/addition in content (map).\

Technorati tags: google my maps, wikimapia

Google Talk user-interface annoyance

Several times a day, I get irritated by following issues in Google Talk user-interface:-

  • Moving mouse over contact list brings up the contact-info popup. Which is quite irritating and leads to another annoyance mentioned in next point.
  • While accessing the scrollbar, very often, I have to go through contact-list area and that brings up the contact-info popup, which stops me accessing scrollbar. I have to click somewhere else or move mouse out to get rid of popup. I believe, there should be good amount of gap between contact list and scrollbar.

Google Talk UI

Yahoo! messenger doesn’t have these issues. I get to see contact-info only when mouse is over buddy-icon, which is on left-side. One fix, it solved two issues.

Yahoo! Messanger UI

Constructing YouTube FLV URL on client-side without any server-side script

It seems, there is a easier way of constructing YouTube! FLV URL on client-side without using any server-side script.

We need get the YouTube video_id from any of following places:-

Then, construct a URL like this: http://www.youtube.com/v/V3BsjxDZJM0

Above URL is used in YouTube embed-code. It is basically a server-side redirection that points to YouTube Player (.swf). Above redirects (server-side) to following URL:-
http://www.youtube.com/p.swf?video_id=V3BsjxDZJM0&eurl=&iurl=http%3A//sjc-
static12.sjc.youtube.com/vi/V3BsjxDZJM0/2.jpg&t=OEgsToPDskKzlTMEFZ1jOh40Xc3qOxzQ

As you can see in above URL, it contains “t” param (in red), which is what we need along with video_id to construct YouTube video (FLV) URL, YouTube FLV URL would look like this:-
http://www.youtube.com/get_video.php?video_id=V3BsjxDZJM0&
t=OEgsToPDskKzlTMEFZ1jOh40Xc3qOxzQ

You can check out code below to figure out things your own. You can also check out the example-app.

Flex 2.0/ActionScript 3.0 example:-

import flash.net.; import flash.events.; import flash.display.*; private var loader:Loader; private var abortId:uint; private function onAppCreationComplete ():void { loader = new Loader (); } private function startLoading ():void { var req:URLRequest = new URLRequest (“http://www.youtube.com/v/3IcwG0jUFxU”); loader.contentLoaderInfo.addEventListener(Event.INIT, handlerLoaderInit); loader.load(req); logMessage (“Loading YouTube URL..”); } private function handlerLoaderInit (event:Event):void { logMessage (“Loaded, processing: “ + loader.contentLoaderInfo.url); var urlVars:URLVariables = new URLVariables (); urlVars.decode (loader.contentLoaderInfo.url.split(“?”)[1]); logMessage (“Processed:-“); logMessage (“\t\t video_id:” + urlVars.video_id); logMessage (“\t\t t param:” + urlVars.t); logMessage (“\t\t thumbnail-url:” + urlVars.iurl); var flvURL:String = constructFLVURL (urlVars.video_id, urlVars.t); logMessage (“YouTube FLV URL: “ + flvURL); playVideo (flvURL); logMessage (“Started Playing Video…”); loader.unload(); } private function constructFLVURL (video_id:String, t:String):String { var str:String = “http://www.youtube.com/get_video.php?”; str += “video_id=” + video_id; str += “&t=” + t; return str; } private function playVideo (url:String):void { player.source = url; player.play(); } private function logMessage (message:String):void { outputText.text += message + “\n”; trace (message); }

ActionScript 2.0 code-snippet:-

createEmptyMovieClip (“mc”, getNextHighestDepth ()); var _mcl:MovieClipLoader = new MovieClipLoader (); _mclListener = new Object (); _mclListener.onLoadStart = function (target:MovieClip) { trace (“The URL is: “ + target._url); var _lv:LoadVars = new LoadVars (); _lv.decode (target._url.split (“?”)[1]); trace (“t param: “ + _lv.t); trace (“video_id: “ + _lv.video_id); trace (“thumbnail: “ + _lv.iurl); trace (“flv url: “ + constructFLVURL (_lv.video_id, _lv.t)); _mcl.unloadClip (target); }; function constructFLVURL (videoId:String, t:String):String { var str:String = “http://www.youtube.com/get_video.php?”; str += “video_id=” + videoId; str += “&t=” + t; return str; } _mcl.addListener (_mclListener); _mcl.loadClip (“http://www.youtube.com/v/3IcwG0jUFxU”, mc);

[1] Flash clients would require server-side proxy because YouTube changed crossdomain.xml sometimes back.

Technorati tags: youtube, video url, url, flv, client-side, actionscript