Saturday, June 07, 2008

Flash Player and P2P

As most of you might already know, Adobe released Flash 10 beta (code named Astro) version some days back. Its available for the developers and early testers to play around at Adobe labs.

I am not a flash developer nor do I work with any of the other Adobe technologies (Apollo, AIR,...). However one key feature of the Flash 10 release caught my eye among a host of other features. Flash Player 10 supports peer to peer communication, and that opens up a host of possibilities for the kind of applications that we can expect. This release supports a new protocol called RTMFP (Real Time Media Flow Protocol) which provides inherent P2P support for the flash applications. I can imagine all sorts of rich applications like games, chat applications, fil sharing and other multimedia applications that can exploit this new feature. It's most likely that Adobe is integrating much more functionality into Flash like say VoIP, with P2P providing the base infrastructure. Else I wonder what a VoIP and IETF guy like Henry Sinnreich is upto at Adobe?

However as one reads deeper into the P2P details in the release, one can say that the peer-to-peer communication is sort of supported in a hybrid way. The whole P2P infrastructure will be managed by a future Adobe Flash Media Server technology and the details about the server availability is not yet known. The underlying protocol used is UDP, which was probably chosen for NAT traversal and for it's relative low-latency for multimedia streaming. All the Flash applications sort of register with Adobe Flash Media Server and then the Media Server links up the interested flash applications that want to interact and also conveys the respective IP network addresses. And then gets out of the way. The respective flash applications then talk to each other directly and exchange information. This is sort of hybrid pseudo-P2P mechanism that's employed by the likes of Skype. RTMFP seems to be a proprietary protocol as of now and the inherent P2P infrastructure is unlike the self-healing, self-discovering, scalable and distributed overlay P2P framework of other P2P applications like the file sharing apps. Further Adobe is saying that Flash P2P can not be used for massive file-sharing purposes. But I guess, that should not prohibit primitive file sharing apps to be using Flash 10. One of the advantages that flash has over any p2p overlay is that it has a large deployment since its claimed that almost 95% of machines have the flash installed.

Oh that reminds me of yet another exciting feature of this new release. Flash 10 allows native file access so users can read and save the files back to native file system.

For some more exciting discussions and comments,
  1. http://justin.everett-church.com/index.php/2008/05/23/astrop2p/
  2. http://whydoeseverythingsuck.com/2008/05/adobe-introduces-p2p-flash-player-kills.html
  3. http://whydoeseverythingsuck.com/2008/05/flash-10-p2p-and-cdns-deeper-analysis.html

Monday, April 28, 2008

MoMo talk for April

This month's Mobile Monday talk was held on 28th April at Nokia premises and was sponsored by Nokia. Ashish Thomas from Singtel group talked on "Steady Innovation for Future Mobile Services". And then Ganapathy Subramaniam from MyDuniya showed some demo of their service platform and the various services available. To conclude, a Forum Nokia representative explained the various developer activities that Forum Nokia was participating in.

To start off, Ashish explained the various services that Singtel had started off or was trialing in the various Asian markets where they operate like Singapore and Australia. Three of the services he mentioned were Location Based service, Next Bus arrival service using GPS and webmail service. I am not sure if I got it right, but the talk fell short of the expectations since Ashish was talking more from an operator's view than services in general. Or probably I had a different picture going into the talk.

Ganapathy showed various services myduniya offers. They are currently in public beta which they launched just a couple of days back. MyDuniya seems to be a platform that tries to bring a lot of the services (which could be taken for granted if one had internet connectivity on their phone) to the consumers via a SMS based service. Once you register with the service by sending an SMS, you can avail many services like sending group SMS, setting and getting reminder notes, sharing of files, sending of mail just by sending SMS etc. And a lot more utility services are supposed to be in pipeline as per Ganapathy, but all driven by SMS. The suite of services does have some traction but I think they should move away from services that are ubiquitous like sending of SMS to group and move into areas that are still not unexplored. Most of the rural and semi-urban folks are unlikely to opt for data based plans or might not have a browser/internet enabled handsets, hence services that are targeted towards them would make the service more meaningful. My 2 cents :)

Sunday, April 27, 2008

ACM monthly talk on RIA

I attended the talk on Rich Internet Applications (RIA) by Mrinal Wadhwa at this month's ACM monthly talk held at the Computer Society of India premises on 26th April, saturday.

The subject matter of the talk was really quiet alien to me but given the buzz around AIR, Silverlight and AJAX and given that this was an introductory session, I attended the talk anyways. The attendance was quite good with around 20-25 folks and all of them from some well known companies and working on enterprise solutions. There were some startup folks in as well. Mrinal went over what RIA is and how it has evolved over the years and then moved to Flex, Flash programming and Adobe AIR. Later on the talk was more inclined towards the Adobe RIA technologies. He showed some of the desktop applications written using Adobe AIR and they looked quite impressive. We also created some very simple web app and desktop app using Adobe AIR technology with the same base code and shown how the desktop and the web are coming together. Mrinal's talk was full of energy, the presentation slides were slick and the attendants were really knowledgeable. The talk and the discussions went on for almost 2.5 hours which was well over the stipulated time of 1 hour. All in all, a great time.

The presentation slides are available at the acm website here.

Saturday, April 26, 2008

Startup School 2008 talks and DHH

Startup School 2008 is one of the initiatives sponsored by the YC folks. This time it was held on 19th April and the guest talks featured some of the most eminent folks of our industry including Jeff Bezos, Paul Graham, DHH, Michael Arrington and Marc Andreessen. The videos are available at justin.tv and omnisio. The talks that are available at omnisio are great, the video and audio quality is good and the presentation slides are clear. However, after nearly half of the presentation the talks seem to get stuck. So I would advice you to use the justin.tv to listen to the talks and use omnisio to look at the presentation slides.


Watch live video from HackerTV on Justin.tv



<div><a href="http://www.omnisio.com">Share and annotate your videos</a> with Omnisio!</div>


Though I have not looked at all the videos myself but the talk by David Heinemeier Hansson (DHH), the creator of Rails is a must listen to and seems to be the best of the lot. While all the other guests were stressing on how to pitch to the VC's and raising funds and how to be bought by the googles and yahoos, DHH went the complete opposite way and talked about how to build a business that sustains itself by charging the customers for the service. DHH is a great communicator and puts across his views really well with some slick slides. And hence his talks are always enjoyable. The links for DHH talk are here for justin.tv and here for omnisio.

Monday, April 14, 2008

Barcamp Bangalore 6 : Summer Edition


Once again barcamp time. The 6th edition of Barcamp Bangalore will be held on 19th and 20th april at IIMB. As during previous versions, expect a lot of interesting talks and interactive sessions.

Saturday, April 12, 2008

Nice styles for web




The look and feel of any web page depends on the CSS style sheet specified by the author of the web page and the CSS style sheet chosen by the user as per his need or preference. The browser applies these stylesheets in a methodical way and the result is what you witness in the browser.

Stylish is a firefox extension which utilises the above concept to make the web sites look more stylish and personalized. A number of styles are available at userstyles. There are different ways in which one can apply the styles.
  1. Site styles affect only the certain site for which a style has been defined for eg: a style for gmail.com.
  2. App styles are applicable to only the particular mozilla application for which the style was conceived.
  3. Global styles as the name implies, applies to all the sites. These styles can perform generalized tasks such as ad blocking or providing prettier form controls.
The screenshot is gmail web page when applied with one of the gmail specific style. In order to get this style for gmail,
  1. goto firefox add-on's page and install the stylish extension. Once installed, you will notice a stylish icon at the right end corner of the status bar of firefox.
  2. login to gmail. Right click on the icon, a menu pops up. Click on "Find Styles for this Page". A new tab opens listing all the available styles for gmail. If you choose any one of them, a new page opens and you will notice a button called "Load into Stylish". If you click on it, you will be able to preview and save it.
  3. Once saved, whenever you visit the specific web page the style becomes active and visible.
The style used for the gmail screenshot above is "Gmail Redesigned (by Globex Designs)". The same procedure applies for using any style. I really love the possibilities with this extension. Happy exploring...

Thursday, April 10, 2008

Starting something



I have been having some really calm and idle days at work lately. That gave me enough reason to get back to reading some interesting tech stories and biographies, something I really enjoy.

Couple of weeks back, I bought probably a must-read book for aspiring entrepreneurs - Starting Something: An Entrepreneur's Tale of Control, Confrontation & Corporate Culture by Wayne McVicker. The book details the journey of two entrepreneurs - Wayne and Jeff and their story about improving the healthcare industry through their company - neoforma.com.

The author takes you through the entire journey - right from their frustration with their employer's reluctance for change, incorporation of the company, initial investors, multiple rounds of funding, dealing with VCs, recruitment of employees and leaders, IPO and corporate culture. And after a while after IPO, both of them moved out of neoforma when one of the divisions was spun off as a separate entity.

Right after reading I checked out how Neoforma was doing now and found that it has since been acquired by GHX (Global Healthcare Exchang).

I recommend this book to everyone and especially to folks interested in startups and entrepreneurship. On the same note, payne has written a nice introductory article on Startup Equity For Employees, which answers in brief all sort of options and stock related doubts one might have while joining a startup.

Monday, March 31, 2008

idea, judgement and execution

Hackers say that "ideas are worthless", Entrepreneurs (non-tech) might say that "its all about THE idea, people are not all that important". Paul puts forward his views over here about this debate.

Sunday, February 24, 2008

libxml ruby gem installation issues

Though as much as I hate dealing with the verbose xml format, xml has become so ubiquitous that one can no longer ignore it. Hence I decided to play around a little with xml and ruby on my ubuntu 7.10(Gutsy Gibbon). The most obvious and easier way to deal with xml on ruby is using rexml. However, if performance is your need then one will have to use the ruby bindings to the libxml library (which I guess explains the performance).

However as I installed gem and ran a sample test program, the ruby interpreter shouted back

/usr/lib/ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require': no such file to load -- libxml_so (LoadError)

After searching on the net, got to know that the library 'libxml_so.so' is indeed generated during gem installation but not copied on the target folder. Hence follow the following procedure to avoid the issues
  1. gem install -r libxml-ruby
  2. Write some sample program (just include ' require xml/libxml', no need for any actual api calls). If this fails pointing to libxml_so.so, then follow the next steps. Else you are good to go
  3. goto /var/lib/gems/1.8/gems/libxml-ruby-0.x.x
  4. run 'ruby ext/libxml/extconf.rb'. This generates the makefile
  5. run 'make' and then 'make install'
  6. go back to your test program and run it. Hopefully everything should be fine.

Monday, February 18, 2008

Couple of thought provoking videos... to ponder about... I need not add anything else.






Wednesday, February 06, 2008

DevCamp is here

Along the lines of Barcamp, DevCamp is another unconference that is being organised on 9th Feb. However this is more focused towards the software development community. This is the first DevCamp session and will be held at ThoughtWorks office at Bangalore. The venue and session details are on the DevCamp wiki page.

The number of registrations have already exceeded the planned capacity and there are quite a few interesting sessions. Martin Fowler will be attending though there is no idea yet as to what his session is about.

Tuesday, January 29, 2008

Railsconf 2007 videos

I have been waiting for these videos for long. Now that Railsconf 2008 registrations are open, the Railsconf 2007 videos are available. Though I have not yet had time to view all of them, I have noticed that the slides are not visible in the videos which is unfortunate.

Monday, January 28, 2008

Web 2.0 workplaces

The workplaces in any startup are bare of any extravagant furnitures and cabin rooms. The mantra is to keep working towards the issues at hand and leave everything else behind. Here are couple of snapshots of some web 2.0 startups. There is a lot that the corporate setups (rather people working for them) can learn from these folks. As a programmer, it's so inspiring to see another programmer working with full intensity, ignorant of everything else that's happening around in a rather frugal setup.

Thursday, January 03, 2008

Upgrading sandbox

I have been busy for the past couple of weeks trying to breathe some life into an old PC/desktop. This system was not with me for the last 3 years. And it has been an exciting and tiring journey since then. It didn't have a network adapter card (I had assembled this one almost 6 years back and in those days the motherboards didn't come with built-in network adapter and sound card). I got an Intex RTL 8139D LAN card from SP road for Rs150. I chose this one just because this was the cheapest of the lot (DLink was double the price) and the WLAN wireless USB one were more than 1000 bucks. The card did get detected on Win98 after some effort.
However, getting the card working on linux has been horrible experience. Not sure if it was worth the bucks I was trying to save by not buying the DLink or any other known card. This Intex card has the sc92031 chipset from Silan Technologies, a chinese company (not Realtek as I had thought). I had fedora linux with a 2.6 kernel. And the drivers that came with the card worked only with 2.4 and 2.5 kernel. Found on the net that some guys had fixed the driver code for 2.6 kernel. And so I compiled the same and loaded the module. But the card didn't work, and I don't know why. Finally found that this chipset has been supported (experimental) in 2.6.21 kernel. I was planning to download the kernel sources and build the image with the card support. However, the latest ubuntu 7.10 (Gutsy Gibbon) had the newer kernel (2.6.22) and supported the card and upgraded to ubuntu. Hence I now have the Gutsy Gibbon up and running quite well and the network adapter seems to be working fine though I have not tried to do any highly data intensive activities. So far so good...
Forgot to mention that the system initially had 128 MB RAM and had to upgrade the same. Again off I went to SP Road and found that this version of RAM is no longer being used by anyone and is not a running item. Which for anyone familiar with the SP Road terminology literally meant that the same was available for a price. The 128MB RAM that I had was DDR1 233 MHz module. The 1 GB RAM was priced around Rs2300 and 512 MB was around Rs.1100. I finally opted for 512 MB and brought the same. And the machine horse power is now good enough for light applications though no where near the dual core 1GB RAM systems that one sees around now a days. However I am quite happy with the end result.
As I said earlier, it's been an exciting time...opening up the cabinet, fiddling around with the motherboard, bending the cabinet to fit in the cards, installation and re-installation and so on. It had been a while I had done something like this.

Wednesday, December 26, 2007

Ruby 1.9 released

Ruby version 1.9 has been released, as Matz had indicated earlier that he would do so on Christmas eve. Mind you, this is a development release and not to be put in production servers. However, one of the interesting things about this release is the speed compared to 1.8 series. I haven't run any comparision tests, but following the tests run from other folks it seems 1.9 release runs about 3 times faster than 1.8.6. That's an awesome improvement and the due credit must goto the core development team. The latest packages are available on the link above.

I am not aware of the Rails roadmap and hence not sure when Rails will be able to run ruby 1.9. But when it does, it will take away some of the speed issues that rails web applications have. And hopefully give the rails folks something to fight the django guys off w.r.t speed :)

Sunday, December 23, 2007

Keep learning

How often don't we see people just suddenly ceasing to learn something new once they reach a certain stage? This is especially more applicable when one is involved in a knowledge based industry. The Indian technology industry has been spinning out more and more software engineers who are more concerned with the pay and less passionate about the work. Hence once the initial enthusiasm dies down within 4-5 years and other social and family responsibilities increase, we see ourselves less and less inclined to spend time on learning something new or putting that extra time and effort. The hunger is no more there. This I guess is one of the reasons why we have such a low percentage of involvement in the open source projects and entrepreneurial spirit.

Anyone who gets into the service industry is promoted to a managerial position within 5-6 years. When I mention about the service industry, I include the MNC centers in India as well and not just the local software companies. And this duration is not good enough for one to understand the length and breadth of the domain that they are currently working in. Leave alone the opportunity to grow laterally and understand other technology domains. I do understand that there are some people who go on to become really good managers. But they would have become so, no matter whether they were pushed into the role or not. That makes me envious of hackers, for they possess an unending and ever growing inclination to learn newer technologies and techniques.

On this note, here are couple of posts I found interesting related to this subject.
  1. Mark Cooper recounts his journey at 40 years, when he had to make switch from COBOL to Java and OO. The link to original article is no longer working and hence this is from the google cache.
  2. Sujai wonders why Bangalore has so many jobs and has tried to de-construct the functioning of the Indian service industry so far. One more of his interesting posts is related to the number of reportees a manager has.
That reminds me that I need to get back to learning. This post applies as much to me as anyone else.

As Steve Jobs puts it, "Stay Hungry. Stay Foolish".

Monday, December 17, 2007

Django Book online

Django has been a worthy competitor to rails so far. For the folks who are new to django, it is a web framework written in python and incorporates much of the principles as rails. However, django has been comparitively lacking much of the developer involvement, documentation and publicity that rails boasts of. Django Book - an online free ebook has been released, which is written by the django authors Adrian Holovaty and Jacob Kaplan-Moss. Any pythonists out there with interest in web development, check it out.

Nokia's iPhone?

Nokia has taken notice of the consumer interest in Apple iphone, it's touch based interface and the UI. This video from Nokia has the iphone interface which we can expect from Nokia devices next year.


Friday, December 07, 2007

Rails 2.0 release

The much anticipated 2.0 release of rails is out. Its been almost an year in the making. DHH has a detailed post about the release and how one can upgrade to the same.

Wednesday, December 05, 2007

InstantRails discontinued, rubystack in

InstantRails has been a really nice and easy way for any novice to get started with RoR and web development. However its further development has been discontinued now and is no longer maintained. Another alternative for RoR complete solution is rubystack from Bitnami folks. Instantrails was packaged as a zip file whereas rubystack is an installable. Haven't tried it yet but will definitely give it a try.