tag:blogger.com,1999:blog-51487022024-03-07T14:56:35.320+05:30Bosky says : The web log of Bhasker Kode<small>Being there, doing that as a full stack developer building <a href="http://appetite.io">appetite.io</a> ,<a href="http://verbs.im">verbs.im</a>.<br> Previously { Early employee at @taptolearn (YC '12), entrepreneur at hover.in (soft-landed), Early employee at Tutorvista (acquired) }
<a href="http://twitter.com/bhaskerkode">@bhaskerkode</a> on Twitter</small>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.comBlogger88125tag:blogger.com,1999:blog-5148702.post-51107950019164246212013-01-06T02:31:00.000+05:302013-01-06T03:22:03.800+05:30Introducing Appetite and updates from 2013<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: left;">
<br /></div>
<div style="background-color: white; text-align: left;">
<div>
<div style="color: #222222; font-family: arial, sans-serif;">
<br class="Apple-interchange-newline" /></div>
<div style="color: #222222; font-family: arial, sans-serif;">
Just wanted to update you on my latest experiment. Since my journey at Hover[1], and Taptolearn[2], I have now joined the 3-person team at <a href="http://verbs.im/" style="color: #1155cc;" target="_blank">verbs.im</a> and prototyping some new ideas. I've always liked detecting patterns - be it <a href="http://www.quora.com/Tell-us-about-the-time-you-most-successfully-hacked-some-non-computer-system-to-your-advantage/answer/Bhasker-Kode?srid=3mW&st=ns">patterns in names</a> as a kid, context on a webpage or from bigdata. So detecting apps from the image of a home screen in near real-time seemed challenging. Plus I got to work in C++ apart from <a href="https://github.com/bosky101?tab=activity">just the weekends</a> ( and erlang for Verbs) which is a great start to my new year.</div>
<div style="color: #222222; font-family: arial, sans-serif;">
<br /></div>
<div style="color: #222222; font-family: arial, sans-serif;">
<a href="http://appetite.io/">Appetite</a> detects apps on your iPhone's home screen automagically[3], and makes it easy to share by giving you a short url. Here's an example of what we detected from Ashton Kutcher's iPhone <a href="http://appetite.io/a/c282709a" style="color: #1155cc;" target="_blank">http://appetite.io/a/<wbr></wbr>c282709a</a></div>
<div style="color: #222222; font-family: arial, sans-serif;">
<br /></div>
<span style="color: #222222; font-family: arial, sans-serif;">Too bad we couldn't submit it to betali.st - apparently they only list startups never publicly mentioned before. Guess we were 24 hours too late. </span><span style="color: #222222; font-family: arial, sans-serif;">I'm stoked by the </span><a href="https://twitter.com/tryappetite/favorites" style="color: #222222; font-family: arial, sans-serif;">initial response of Appetite on Twitter</a><span style="color: #222222; font-family: arial, sans-serif;"> since posting it </span><a href="http://news.ycombinator.com/item?id=5008603" style="color: #222222; font-family: arial, sans-serif;">on HN yesterday</a><span style="color: #222222; font-family: arial, sans-serif;">. </span></div>
<div style="color: #222222; font-family: arial, sans-serif;">
<br />
Here's what Matthew @Panzer, the editor of thenextweb had to say, when he stumbled on appetite to our delight</div>
<div style="color: #222222; font-family: arial, sans-serif;">
<!-- embed -->
<blockquote class="twitter-tweet tw-align-center"><p>My CES home screen.Here’s a link to the apps (minus Glassboard, detected as a Japanese app):<a href="http://t.co/TNpU1obx" title="http://appetite.io/a/fe40b073">appetite.io/a/fe40b073</a> <a href="http://t.co/MgX7yPbx" title="http://twitter.com/panzer/status/287611983665188866/photo/1">twitter.com/panzer/status/…</a></p>— Matthew Panzarino (@panzer) <a href="https://twitter.com/panzer/status/287611983665188866" data-datetime="2013-01-05T17:30:15+00:00">January 5, 2013</a></blockquote>
<script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script>
<!-- /embed -->
<script async="async" charset="utf-8" src="//platform.twitter.com/widgets.js"></script></div>
<div style="color: #222222; font-family: arial, sans-serif;">
To <b>try it out yourself</b>, visit <a href="http://appetite.io/" style="color: #1155cc;" target="_blank">http://appetite.io</a> or mail your homescreen to <a href="mailto:post@appetite.io" style="color: #1155cc;" target="_blank">post@appetite.io</a><br />
<a href="mailto:post@appetite.io" style="color: #1155cc;" target="_blank"><span style="color: #222222;"><br /></span></a>
<br />
<a href="mailto:post@appetite.io" style="color: #1155cc;" target="_blank"><span style="color: #222222;">Will love your comments.</span></a></div>
<div style="color: #222222; font-family: arial, sans-serif;">
<br />
~Bosky | @bhaskerkode</div>
<div style="color: #222222; font-family: arial, sans-serif;">
<br /></div>
<div style="color: #222222; font-family: arial, sans-serif;">
[1] Soft-Acquired. Online advertising, Erlang stack, <a href="http://slideshare.net/bosky101" style="color: #1155cc;" target="_blank">http://slideshare.net/<wbr></wbr>bosky101</a><br />
[2] a YC startup where I worked on iOS frameworks + analytics, <a href="http://taptolearn.com/products" style="color: #1155cc;" target="_blank">http://taptolearn.<wbr></wbr>com/products</a></div>
<div style="color: #222222; font-family: arial, sans-serif;">
[3] via computer vision , machine learning</div>
</div>
</div>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com0tag:blogger.com,1999:blog-5148702.post-74118663080894305702008-12-14T22:27:00.007+05:302008-12-15T00:35:48.504+05:30Xmas Hols Advice for juniors in college<span style="font-size:85%;"><span style="font-style: italic;">The following is a edited version of mail conversation I had with a junior from <a href="http://svce.ac.in/">SVCE</a> asking for advice, thought it would make a decent blog post as well.</span></span><br /><br />Dear junior(s),<br /><br />Guy Kawasaki <a href="http://economictimes.indiatimes.com/articleshow/msid-3500919,prtpage-1.cms">commented recently</a> that "Statistically there should be four Steve Jobs in India because the US has 300 million people, and India has 1.2 billion.<br /><br />...."You just have to find them"<br /><br />If you want to be "somebody" similar some day, you need to start as early as possible.<br /><br />Lets start off with some number crunching, to back my theory.<br /><br />There are >200 colleges in State of Tamil Nadu alone, each graduating around ~ 750 students a year.<span style="display: block;" id="formatbar_Buttons"><span class="on down" style="display: block;" id="formatbar_CreateLink" title="Link" onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmouseup="" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 8);ButtonMouseDown(this);"><img src="http://www.blogger.com/img/blank.gif" alt="Link" class="gl_link" border="0" /></span></span><br />That's 200 * 750 = 1,50,000 coming out of every college.<br /><br />Some of the most illustrious companies have been founded by people, typically in groups of 2-3 who dropped out of college or even school. So assuming that you restrict yourself to your University syllabus, study very hard and get amazing marks. The truth is that you still are as comparable to a 12th standard student when it comes to being ready. I not going into get into the standards of what industry-employable means nor am I going to talk about how the "student on 31st, s/w associate on 1st" generation compares to even 12 year olds <a href="http://online.wsj.com/public/article/SB114721319725548216-EPUotRD8d3aZ4HFijEN8r_DOdJQ_20070509.html?mod=blogs">from Eastern-Europe</a>!<br /><br />Assuming there are twice as many school students coming out every year, thats another 3,00,000 school students coming out for each year of you enjoying your college life. So every year the combined college + school passing out number is therefore<br />(3,00,000 + 1,50,000) = 4,50,000<br /><br />But hold on , you still need 4 years to graduate by which time there are 4 more generations of students as well who have completed 12th. So by the time you graduate at the end of four years - you are no different wrt knowledge gained - from students from your batch, and five batches of students younger to you.<br /><br />that's 5 * 4,50,000 = 22,50,000 students just like you all equally<br />competent having two choices :<br />a) wait for something to happen, and following the crowd<br />b) get inspired and start their journey on the road less traveled.<br /><br />~ 22 lac students !<br /><br />225,000 students/year waiting for something to happen - being good boys and girls. How are you going to differentiate and find opportunity from those students. Heck I dont think you can find individuality in your name with that number!<br /><br />Which is why perhaps if you can work as a team, maybe find students with the same aspirations and vision , and read / talk / discuss things after college . Find some large enough project , that you think be constructive. Perhaps there's a problem you see around you and you want to fix it . Perhaps it's some algorithm or bottleneck that your textbook quotes,or perhaps it's something to do with green/clean tech. Pick something BIG. Big enough that you think that if your team got it right - you could get a Nobel ... or be quoted in journals or in the papers, wikipedia, or contribute to some open source project, or help port some examples from a definitive book on an subject ... or perhaps not to get quoted anywhere but would change the lives of millions of people.<br /><br />So here are 3 things to get you started [1]<br /><ol><li><span style="font-weight: bold;">Do you even want to find some purpose in life ?</span><br />If you still want to wait and see what happens in life, then maybe you deserve to ignore your calling, and just exist...<br /><br /></li><li><span style="font-weight: bold;">Find an interesting problem</span><br />Every generation has it's own set of distinct scenarios, technologies, resources, mindsets and challenges. Would Larry/Sergie or Paul/Bill or the Steve's of Apple have made an impact if they were born 50 years earlier. Perhaps... Perhaps rather than trying to build the next big operating system, if you interpret the right problems, you might do some justice. Atleast that's the hope, behind which a lot of startups and people venture out. But the key is again in interpreting the problem. If Henry Ford had listened to the communters in his age, he would have tried to make faster horses. I can imagine fancy projections for how many tape drives would be required towards the end of the century. I hope we can one day, look back at the projections of fuel in 2050 made today when let's say in the meantime a new breed of fuel makes it immaterial.<br /><br /></li><li><span style="font-weight: bold;">Find the right person or group of people to interact/work with, after college hours</span><br />That's why libraries, clubs, unconferences or classrooms for that matter are'nt just about what one person says behind a board - its also about finding like-minded people in your college, mentors , and deciding to do something perhaps in the library, perhaps online, perhaps in the labs, perhaps over tea/bajji's.<br /></li></ol><br />Time's change, but if you look hard enough, there will always be like-minded people. So you need to read and experiment, and if there's some magic formula to achieve a lifetimes worth of work, let me know as well. But until then, acceptance of ignorance is your greatest teacher, along with having the passion to <span style="font-weight: bold;">"create something out of nothing"</span>. That's what appeals to me atleast both as a technopreneur , as well as an amateur cartoonist! It might be as simple as reverse engineering your life, and taking control - rather than waiting for things to happen. I'm lucky to look out for and find two classmates who shared the same passion during my college days as well. But I can't even begin to imagine what needs to be done. I used to envy the folks down at the silicon valley for being at the first expo where Microsoft demo'ed against the heavy weights or Apple used to hack out workshops. But then again - we do have those events right here, in a different era, but no less strategic a point in time. At Barcamp Chennai 2006, there were a handful of us students attending let alone speaking. Fast forward to the last designCamp Bangalore, and four of the seven speakers were from Svce. But again mostly alumni, and the same faces. Today, we have the <a href="http://proto.in/">Proto</a> 's and <a href="http://foss.in/">Foss</a> events, OCC's , Barcamps & Headstart's happening frequently enough right now and it's sad that the student involvement is'nt there yet. Go for it! Be there. Because before you know it - you'll be looking back from your death bed not wondering about the things you did in life - but about the things you did'nt ... when you were hungry and foolish[2] ; ) .<br /><br />Happy Hols... 8 )<br /><br />Keep Clicking,<br />~B<br /><br />[1] Incidentally , Swaroop C H's recent <a href="http://www.swaroopch.com/blog/how-fresh-graduates-can-grow/">post on how graduates can grow</a>, hits along the same lines, and has insightful links to other reads as well<br />[2] Rashmi Bansal's "Stay Hungry,Stay Foolish" is a nice read giving insights into 25 IIM-A grad founded companies, and documents well the struggles they had to overome, particularly well. The title itself is adopted from <a href="http://news-service.stanford.edu/news/2005/june15/jobs-061505.html">Steve Job's talk at Stanford</a>.Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com6tag:blogger.com,1999:blog-5148702.post-91221437644404754452008-05-24T13:36:00.001+05:302008-05-24T15:47:12.428+05:30Erlang, distribution & bspawner<p><a href="http://www.sriramkrishnan.com/">Sriram Krishnan</a> was enquiring about distributed programming tools and all things distributed. No doubt, the first thing that came into my mind was "erlang", and taking into consideration that he was <a href="http://www.sriramkrishnan.com/blog/2008/05/what-twitter-and-everyone-else-needs.html">inviting feedback</a> & his recent work on cacheman and on server /app performace i thought it would be a good time to talk about <span style="font-weight: bold;">bspawner</span> - my own pet project among other things <span style="font-style: italic;">erly</span>.<br /></p><p><span style="font-weight: bold;">Load Balancing & Introducing bspawner</span><br /></p><p>Erlang nodes can communicate over the network if they find each other. You can send a message to any process (differ from OS process) through its Pid – even if the process is on another node. </p><p>Although you don't have to know where processes are, it is still up to the erlang programmer to decide which node initially spawns a task on which node as there is no inherent way to make use of multiple nodes , even though they recognize each other & can message-pass between them. </p><p><a href="http://bspawner.googlecode.com/">bspawner </a>is a project i've open sourced - that attempts to load-balance the task of spawning across multiple nodes . The steps involved can be isolated into a couple of distinct problems. </p> <ol><li>deciding which node needs to spawn a task</li><li>communicating across these nodes<br /></li><li>maintaining a record of nodes, added /removed nodes ,etc </li></ol> <p>This project in its essence, deals with the first part and the implementation of the message passing begins with the "<a href="http://www.erlang.org/doc/getting_started/conc_prog.html">messenger.erl</a>" sample program and modifiedto handle the intended message-passing, load-balancing and node-information<br /></p> <p>Cheers to the feedback, suggestions , comments, and further changes inspired by the growing involvement of the erlang community & encouragement from #erlang in particular. </p> <p>However, since the project is still in its early stages - and although it was a fantastic learning experience - I learned that Erlang already had inbuilt load-balancing module that I quote:</p> <p style="font-style: italic;"><span class="code"></span></p> <blockquote> <p style="font-style: italic;"><a style="font-weight: bold;" href="http://erlang.org/doc/man/pool.html"><span class="code">pool</span></a><span style="font-weight: bold;"> </span>can be used to run a set of Erlang nodes as a pool of computational processors. It is organized as a master and a set of slave nodes and includes the following features: </p> <ul style="font-style: italic;"><li> The slave nodes send regular reports to the master about their current load. </li><li> Queries can be sent to the master to determine which node will have the least load. </li></ul> </blockquote>How cool can it get! Since it's even build in a master-slave basis - when one worker goes down, restart strategies can be configured courtesy of <a href="http://www.erlang.org/doc/design_principles/part_frame.html">Erlang's OTP supervisor</a> and behaviours. this basically allows you to horizontally scale and have distribute processing among box's. I'm even wondering to test this setup at hover.in on weekends by maybe doing some bizarrely wild clustered processing job like ...<br /><ul><li>finding the largest prime number in Pune maybe ? :D</li><li>any thing from distributing cron jobs to non-blocking or blocking I/O to ... free your mind!<br /></li></ul> <p><span style="font-weight: bold;">Testing & Test suites</span><br /></p><p>I'm not much into the whole test suite setup as yet, but there a good test suite that is widely adopted would be<br /></p><ul><li><a href="http://svn.process-one.net/contribs/trunk/eunit/doc/overview-summary.html">EUnit</a> - a Lightweight Unit Testing Framework for Erlang</li><li>An excellent error report evaluation, testing and debugging paper can also be found <a href="http://www.erlang.se/workshop/2002/Wiger.pdf">here</a> (although a little old '92 , still gives valuable info on general practices)<br /></li></ul><p><span style="font-weight: bold;">Distributed Monitoring & Debugging </span><br /></p><p>Regarding utilities for debugging & profiling ,etc apart from user-contributed packages, and there are loads of them on <a href="http://cean.process-one.net/">process-one</a>, <a href="http://trapexit.org/">trapexit</a> , jungerl, <a href="http://code.google.com/hosting/search?q=erlang&btn=Search+Projects">google code</a> ,etc - I thought I would list few of the interesting utilties . <span style="font-style: italic;">( see more on the left side of the </span><a style="font-style: italic;" href="http://erlang.org/doc/">documentation at erlang.org</a><span style="font-style: italic;"> under Tool Applications ) </span><br /></p><ul><li>appmon — a graphical utility to observe and manipulate supervisiontrees.</li><li>debugger — an Erlang source code debugger.</li><li>erl_interface — a set of libraries for communicating with distributed Erlang nodes.</li><li>et — the event tracer and tools to record and give a graphical presentation of event data.</li><li>eva — the “event and alarm” handling application.</li><li>observer — tools for tracing and observing the behaviour of a distributed system.</li><li>os_mon — a tool to monitor resource usage in the external operating system.</li><li>pman — a graphic tool to inspect the state of the system, at local or remote Erlang nodes.</li><li>runtime_tools — miscellaneous small routines needed in the runtime system.</li><li>toolbar — a graphical toolbar from which applications can be started.</li><li>webtool — a system for managing web-based tools (such as inets)</li><li>tools — a package of stand-alone applications for analysing and monitoring Erlang programs. This includes tools for profiling, coverage analysis, cross reference analysis etc.</li></ul><p></p>These go hand in hand with other utilities like the distributed database also written in erlang called <a href="http://www.erlang.org/doc/apps/mnesia/index.html">Mnesia</a>, or other open-source erlang implementations of everything from <a href="http://code.google.com/p/bloomerl/">bloom filters</a> and <a href="http://code.google.com/p/erl-dectree/">decisssion trees</a> , to <a href="erlycomet.googlecode.com">bayeux protocol-comet servers</a> and <a href="gencron.googlecode.com">cron jobs</a>.<br /><br /><span style="font-weight: bold;">Preserving State in Datastrutctures, Process's or Servers</span><p><span style="font-weight: bold;"></span>Behaviours are templates or formalizations of common design patterns. The three inbuilt behaviours are gen_server (client-server paradigms), gen_event (event-driven paradigms) and gen_fsm ( finite state machine paradigms). In addition you can create your own behaviours and have modules implement them. <span style="font-style: italic;">(Emacs in erlang mode, even gives nice skeletons for all behaviours, common design patterns)</span></p><p>You can also have stateless or stateful process's which can run indefintely, or be blocking in nature or exit after a timeout. Which really opens up a whole lot of possibilities, but again - since the key is in message passing - regardless of the process's being on your local node or half way across the globe.<br /><span style="font-style: italic;"></span></p><p><span style="font-style: italic;"></span><br /><span style="font-weight: bold;">To think about ....<br /></span></p><ul><li>load- balancing two or multiple yaws servers <span style="font-weight: bold;">each</span> of which are capable of handling <a href="http://www.sics.se/%7Ejoe/apachevsyaws.html">80,000 parallel connections each.</a><br /><br /></li><li>Having <a href="http://kazmier.net/computer/port-howto/">erlang communicate via a port</a> to say a python or perl for doing abstracting cross-language functionaliry ( Facebook Chat seems to be the largest xmpp-erlang based web application , and communicates with c++ for logging)<br /></li></ul>So there you have, I'm still a beginner in Erlang - but it's pretty evident to see the kind of flexibility to mix and match with the OS and other languages, the inherent encouragement towards distribute and concurrent programming across multiple nodes, the facets of a functional programming language , as well as an active and growing developer community.<br /><br /><br /><span style="font-weight: bold;">Keep Clicking,</span><br />Bhasker V KodeBoskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com3tag:blogger.com,1999:blog-5148702.post-87869408409279676662008-05-20T18:02:00.001+05:302008-05-20T20:37:21.309+05:30Updates on Identities on the webSome thoughts on identities and their related data , online accounts and related news over the past few weeks.<br /><ol><li> The Data Portability group amidst trying to get the big-wigs to come together and discuss how to share user data ,gets <a href="http://www.techcrunch.com/2008/04/30/strike-two-dataportability-workgroup-logo-challenged-again/">warned twice</a> about infringement related cases in its own logo. But otherwise they've been pretty busy, with several announcements with the right intention, but left to too many influential market dynamics and vested invterests ( as illustrated in the points below)<br /><br /></li><li>OpenID, seems to keep itself out of trouble, and with a bunch of active adopters and hackers <a href="http://barcamp.org/OpenIDDevCamp">working together</a> - there seems to be hope after all . Still don't know how long before the authentication itself can be made a asynchronous call, rather than the multi-step process right now. A ycombinator startup called <a href="http://clickpass.com/">clickPass</a> seems to have some traction in its favour.<br /><br /></li><li>Google 's Orkut makes the news with the <span style="font-style: italic;"><a href="http://www.google.co.in/search?q=google+orkut+indian+jail&ie=utf-8&oe=utf-8&aq=t">indian who was jailed</a> for commenting on a particular politician </span>( im not touching this with a 10 foot pole! :D ) . Rumours from the local Pune papers, also suggest that <span style="font-style: italic;">girifthar'ed</span> the wrong guy! ( that's right , newspapers in Pune report more rumours and Bollywood gossip that actual news)<br /><br /></li><li>And as if <span style="font-style: italic;">offering for your product for FREE</span> was'nt good enough, early adopters are ploughing away in a bid to yank their data out as well . Thoughts on <a href="http://blog.linkedin.com/blog/2008/01/linkedin-and-da.html"><span style="font-style: italic;">who owns your data </span></a>within the facebook network, have brought in highly-engrossing <a href="http://scobleizer.com/2008/05/15/facebook-has-a-point-where-it-comes-to-your-privacy/">discussions</a> as well. Its your id, your profile, your pics, on <span style="font-style: italic;">their </span>servers , powered by <span style="font-style: italic;">their </span>cash and <span style="font-style: italic;">their vc's</span> credibility. If the beacon showed what 3rd party developers could do with your data, the latest trend in 'yanking the data out' could give as unpredictable and "no-one-strategy-suits-anyone" results. ( It might also be interesting to check out the school talk / <a href="http://www.37signals.com/svn/posts/981-the-secret-to-making-money-online">DHH talk on how to make money online</a> - charging your customers works! )<br /><br /></li><li>What do you do when a startup's product becomes so popular that people get inspired enought to want to take their data elsewhere or distribute it as well! Thats been the case with Twitter and several comments on how to <a href="http://www.techcrunch.com/2008/05/05/twitter-can-be-liberated-heres-how/">de-centralise twitter</a>.<br /><br /></li><li>FaceBook and Google not hitting it off with the launch of Google FriendConnect, with <a href="http://scobleizer.com/2008/05/19/why-microsoft-will-buy-facebook-and-keep-it-closed/">Scoble 's insights</a> into how Microsoft wants to keep the web closed, and how FriendFeed is trying to filter signal from the noise. Most users are used to the noise btw( when was the last time you went to cnn or bbc <span style="font-style: italic;">VS</span> a twitter or a valleywag) . Facebook also makes news in the #erlang channels btw, for probably becoming <a href="http://www.facebook.com/notes.php?id=9445547199">possibly the largest erlang powered chat app</a>. Will be interesting to see what technique they're using in handling unicode - something that hover.in is working to integrate as well .<br /><br /></li><li>Zoho announcing that you can now login to <a href="http://blogs.zoho.com/general/login-to-zoho-with-your-google-or-yahoo-accounts/">Zoho with your google or yahoo accounts</a>. Very inspiring to see the pace at which Zoho takes ideas and implements them. Keep 'em coming!<br /><br /><br /></li><li>And amidst all this , a friend pointed out to me that someone was posting comments under the alias <span style="font-style: italic;"><span style="font-weight: bold;">kode</span>, without </span>their full names , giving several blogs and people the impression that it was infact me who was commenting, etc. What happened to the days when stalkers believed in linkback :D . Either ways, I hope its nothing as serious and on the contrary, it does bring up several unique advantages that a <a href="http://sezwho.com/">sezwho</a>, a <a href="http://disqus.com/">disqus</a> , <a href="http://friendfeed.com/">friendfeed</a> or an openid-enabled commenting system can provide.<br /><br />But it helps to remember that <a href="http://en.wikipedia.org/wiki/Nile"><span style="font-style: italic;">denial</span></a> is'nt just a river in Africa .<br /><br />8 )<br /></li></ol><br /><span style="font-weight: bold;">Keep Clicking,</span><br />Bhasker V Kode<br /><br /><br />PS : Btw, if you're a fresher looking to join a startup in <a href="http://en.wikipedia.org/wiki/Pune">Pune</a> , send in a mail to <span style="font-style: italic;">kode at hover dot in</span>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com1tag:blogger.com,1999:blog-5148702.post-39581995484559685452008-04-02T02:53:00.005+05:302008-04-02T05:16:32.053+05:30Developing developer platforms Part-1It's no secret that I've always <a href="http://twitter.com/bosky101/statuses/781040535">been an ardent admirer</a> of companies that invest in impressive internal tools, developer resources, and internal things that make your developers go <span style="font-style: italic;">mmmh</span>! Perhaps thats the secret to how they manage to release public api's and platforms for developers quickly in their product life cycle than companies with more mature products,but spend more time and effort trying to open up API's even for internal use in a plug-n-play, easy to lookup&hack fashion. <a href="http://developers.facebook.com/">Facebook</a> & <a href="http://developer.yahoo.com/yui/docs/">YUI</a> will always be remembered for the part they've played in this very paradigm.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjAV5okVB4y7Ar41ZjpmS-AFuXYhHzYO9X-rGb0asKRWUtYOzmkjDCTe8SZAWX4BvAOgxnpIRW3XvAvQvxlLXDGj1Dl8-wZfPlEMXUHrz2JT1xFWK9DH0fV-vdnBJWoJRS5KaBb2w/s1600-h/api.JPG"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjAV5okVB4y7Ar41ZjpmS-AFuXYhHzYO9X-rGb0asKRWUtYOzmkjDCTe8SZAWX4BvAOgxnpIRW3XvAvQvxlLXDGj1Dl8-wZfPlEMXUHrz2JT1xFWK9DH0fV-vdnBJWoJRS5KaBb2w/s400/api.JPG" alt="" id="BLOGGER_PHOTO_ID_5184414970239832658" border="0" /></a><br /><br />So, I thought it was time to kickstart my own soul searching, API intimidating, developer friendly environment right here at <a href="http://hover.in/">hover tech</a>.. . What follows is a of the platform for the developers ( thats emp#1 <a href="http://srivatsan.in/">srivatsan</a>, and upcoming recruit thyaga- both theoretical CS & functional programming fanatics ) who one day will i hope influence the lives of several thousands of users, just as my own <a href="http://ravimohan.blogspot.com/">programming</a> <a href="http://t3.dotgnu.info/">rockstar</a> <a href="http://joehewitt.com/">idols </a><a href="http://ejohn.org/">have</a> done <a href="http://bosky101.blogspot.com/2007/09/where-are-indian-hackers-boskys-reply.html">in the past</a>.<br /><br />Firstly, I jotted down a number of things that would seem fairly familiar in an environment where you track api changes, features, test them in real-time ,and discuss/update them. Things that came to mind in the first version of <span style="font-weight: bold;">db_api</span> were<br /><span style="font-weight: bold;"></span><ul><li>api Id</li><li>developer<br /></li><li>module name</li><li>path to source</li><li>path to RESTfull call <span style="font-style: italic;">(so that development is independent of server side language/es)</span><br /></li><li>params, and type for the GET/POST</li><li>return type<br /></li><li>description</li></ul>An important element that allows to use this system outside the walls of your startup, is ofcourse the accessibility of the api information to either internal use or public api developers ,etc , which was added into <span>db_api </span><span style="font-weight: bold;">. </span><br /><ul><li><span style="font-style: italic;">(.. added to db_api)</span><br /></li><li>accessibility<br /></li></ul><br />I also thought a created_on, updated_on would help. To add more clarity regarding the params sent into the GET/POST call, i then normalized the prev fields into another table called <span style="font-weight: bold;">db_api_params</span> that would be of the form<br /><ul><li>id</li><li>api Id</li><li>param name<br /></li><li>type</li><li>description (tried to be synonymous to the javaDoc/jsDoc syntax)</li></ul>Now today i might be in a position to look into each of my developer 's api declared into the system, but felt a more transparent yet "scope for delegation" strategy was best implemented by introducing a reviewing sytem. Hence the <span style="font-weight: bold;">db_api_reviewinfo<br /></span><ul><li>id</li><li>api Id</li><li>reviewed by</li><li>last reviewed on</li><li>comments</li><li>isFlagged</li></ul>Notice the luxury of comments, and a warning signal to quickly be able to search flagged or high priority api calls . Come to think of it, it could even be a rating based priority ,instead of a boolean. Also there may be several comments to the same api, review and moreover i wanted to have a "comment stream" , possibly displayed on one of the 21" monitors i'm planning to have at a centrally accessible area in the office. ;) So synchronous threading model for comments seemed warranted enough to spawn a new table <span style="font-weight: bold;">db_api_comments</span>, and re-edit the last two fields into:<br /><ul><li><span style="font-style: italic;">(...edited db_api_reviewinfo)</span><br /></li><li>comment Thread id</li><li>flaggedRating</li></ul><ul><li><span style="font-style: italic;">(db_api_comments)</span></li><li>api id</li><li>title</li><li>by</li><li>content</li><li>date</li><li>comment type ( so u can comment on a developer | api call | review | module )<br /></li></ul>Since i was allowing multiple reviewers for an api call, considering that we do want to hire experts to help in multiple api and platform initiatives, i decided to have a similar developer db, for information on possibly mutiple developers working on the same api, as well to see a nice report on which developers are working on what , and hence <span style="font-weight: bold;">db_api_devinfo </span>and<span style="font-weight: bold;"> db_api_developers<br /></span><ul><li><span style="font-style: italic;">(db_api_devinfo)</span><br /></li><li>id</li><li>api id</li><li>developer id</li><li>created on</li><li>flagged by developer</li></ul><ul><li><span style="font-style: italic;">(db_developers)</span></li><li>id</li><li>name</li><li>email</li><li>hashed password<span style="font-style: italic;"></span><br /></li><li>permission level ( for admin/developer/ manager / testing positions /etc)</li></ul>Since a greater part of the developers out there appreciate the usage of modules to wrapper function calls (as against global PHP calls or on the contrary the depreciation of global calls in actionscript 3.0 !) , we are going to make a simple table for module information called <span style="font-weight: bold;">db_api_modules</span> so that we could list api calls per module, or even drill down to public/internal api calls within a module)<br /><ul><li><span style="font-style: italic;">(db_api_modules)</span></li><li>id<br /></li><li>name</li><li>description</li><li>created by</li><li>flagged priority</li><li><span style="font-style: italic;">( todoID perhaps implemented later ?...)</span></li></ul>So there you have it, the meat of the monster in place, and once you hack up a login system in the server side language of your choice <span style="font-style: italic;">( <span style="font-weight: bold;">erlang</span> & <span style="font-weight: bold;">mnesia</span> with traces of <span style="font-weight: bold;">python</span> and loads of <span style="font-weight: bold;">javascript</span>, in the case of hover.in ) </span>- you should have the following very impressive reports at your disposal:<br /><ol><li><span style="font-weight: bold;">List of Developers</span> , <span style="font-style: italic;">filter by permission or name<br /></span>Maybe you could integrate your bugzilla/ wiki/forum or mashup ur own flavoured list of developers and their information.<br /><br /></li><li><span style="font-weight: bold;">List of Reviewers , </span><span style="font-style: italic;">filter by name or flagged priority or module<br /></span>Nice for delegating and promoting a peer-review atmosphere at work where people are ranked not by experience , but by expertise on domain. Could even integrate HR data once u cross the 20-30 mark and gauge who to allocate where, etc<br /><br /></li><li><span style="font-weight: bold;">List of</span><span style="font-style: italic;"><span style="font-weight: bold;"> </span></span><span style="font-weight: bold;">Modules</span><span style="font-style: italic;">, filtered by perhaps date or your own custom fields like "show-stopper " status<br /><br />and of course the big momma...<br /><br /></span></li><li><span style="font-weight: bold;">List of API Calls</span><span style="font-style: italic;"> , filtered by<br />by developer<br />OR by flag priority<br />OR by module (hack a drop down like facebook maybe )<br />OR by accessibility ( useful to use same system to show for your platform developers as well as for internal developers) OR<br />OR <a href="http://pdilip.com/">ask an</a> intern to hack up a api search with autocomplete input like YUI.</span></li></ol><br />It might not be perfect, but it's a start and a very satisfying night's work 8 ).<br /><br />If you'd like to get the <span style="font-style: italic;">wicked</span> details of we're going to implement or if you would like to implement it yourself along with the rest of us- Arun ,our CEO and an <a href="http://trak.in/">active blogger</a>, Srivatsan and Thyaga (yup that's about it ) , let me know. Send a mail over to <span style="font-weight: bold; font-style: italic;">kode at hover dot in</span> . We are just settling into the <a href="http://punestartups.ning.com/">startup ecosystem in Pune</a>, India and would like to hear from you as well as keep everyone in the loop of how it turns out in subsequent parts. And maybe will do a talk about the progress at the next barcamp pune as well .<br /><br />Keep Clicking,<br /><br /><span style="font-weight: bold;">Bhasker V Kode</span><br />Founder & CTO - Hover Technologies <span style="font-style: italic;">( prev. nick = Orange cube )</span><br />http://hover.in<br /><br /><p class="technoratitag">Technorati Tags: <a href="http://www.technorati.com/tags/programming" rel="tag">programming</a>, <a href="http://www.technorati.com/tags/api" rel="tag">api</a>, <a href="http://www.technorati.com/tags/facebook" rel="tag">facebook,</a> <a href="http://www.technorati.com/tags/yui" rel="tag">yui,</a> <a href="http://www.technorati.com/tags/bosky" rel="tag">bosky,</a> <a href="http://www.technorati.com/tags/hover" rel="tag">hover</a></p>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com2tag:blogger.com,1999:blog-5148702.post-6183310262483200382008-03-13T20:39:00.005+05:302008-04-03T04:07:07.190+05:30it doesnt matter what language you write in, if you can write the futureI often hear about an upcoming platform going to revolutionize the next decade. Now I have no qualms with this , and infact biased towards big-thinkers . But i just think that on the contrary this is an inherent potential that <span style="font-style: italic;">any</span> platform / technology can claim. <span style="font-style: italic;">How big </span>was it designed to be when it was visualized ? Were they thnking big enough when the users were thought of ? I think these are interesting questions. Because for all practical reasons ,it is <span style="font-style: italic;">you</span> who writes the future. Literally in your <span style="font-style: italic;">code</span> , in your <span style="font-style: italic;">packaging</span>, and its scaling before it goes out there for better or for worse. Who would you blame for <span style="font-style: italic;">X</span>'s success or failure? seems reasonable enough to claim X <span style="font-style: italic;">to please stand up</span>. But looking deeper I think it's only fair to say that you may have limited yourself to build something <span style="font-style: italic;">just</span> big enough for a million people to notice that it's doing well. Might sound cruel? but thats the way the way consumer web products space works.<br /><br /><span style="font-weight: bold;">Vision of a startup</span><br />What would you think of a <span style="font-style: italic;">3 month old startup</span> for sale on ebay ? TechCrunch would put you in <span style="font-style: italic;">"the deadpool"</span>. The founders could call it <span style="font-style: italic;">an exit</span>. But the obvious reason in the difference in reactions is that the founders may have wanted just to hack a product in a couple of months, when they started off and get bought over . On the other hand, i completely understand why the founders over at Yahoo! were still not satisfied with 65$bn dollars. I can see why Zoho had'nt diluted much when they had numerous bids,much to the misery of the biggest players and investors in the world. Because that's not the future they want to write, and it simply is'nt time yet, they are'nt <span style="font-style: italic;">there </span>yet, ... and miles to go before they sleep.<br /><br /><span style="font-weight: bold;">Writing the future</span><br />If you think you can "write the future", please let me know . I think i can too and maybe we could start a forum for us ;) . Maybe we could go back and think of all the things we are'nt doing. Maybe we could think of all the things that show you that there are so many things that we still don't know. But at least we know what we don't know , as cliched or odd as it sounds. We know that we suck at some things. And these are the kind of things that are needed to get you doing the things you want to do .<br /><br />I call it a "reverse engineering process". It's a fantastic feeling when you can identify what you want in life. <span style="font-style: italic;">"What you want"</span> ,not the <span style="font-style: italic;">how</span> or the <span style="font-style: italic;">if's</span>. But the long-term dream. Although that question itself more often has more to do with what you <span style="font-style: italic;">don't want</span> . That's what incidently provoked my entrepreneurial ventures . I wanted to be responsible for my own failure /success by taking things in my own hand. And fortunately or unfortunately - recognition can only come in two scenarios. I can't remember what the second one is , but the first one is - as Paul graham said once -is a <a href="http://www.paulgraham.com/start.html">startup</a> . You don't need to be a chemist to realise that the implications of your actions is best seen in a isolated environment. So that definitely convinced me that joining a 100,000 services company would be conflicting to my interest <span style="font-style: italic;">(no offense they are amazing wealth & welfare creators ) </span>. Agreed that youngsters and executives from today's indian middle class can afford to take the risk. But they <span style="font-style: italic;">don't</span>. I have nothing against people who don't want to write their future. But ignorance is something that something i love to fix. And I have no problem admitting to it- because i think it's a human right violation to not find out <span style="font-style: italic;">how ignorant you are</span>. And i love finding out <span style="font-style: italic;">how ignorant i am</span>. Just love it! Because then it's upto you to decide what ignorance you want to rectify , before moving onto the next ignorance to rectify,...and so on! And the earlier you start , the better. They should have dropped you in a pool,the day you were born . Hows that for a <span style="font-style: italic;">claim to evolve for survival</span>. ( <span style="font-style: italic;">jk! )</span><br /><br />Will every moment in your life bring you in a position where you are an expert. Nope, so like i said, the sooner you start the better, and believe me - everyone in the industry is watched. And people only just want you to keep doing what you have been doing, but only with fancier names. Now depending on your appetite for risk , you could either take the road that puts you in the situation at par of your natural growth-path - in a rat race just without recognition. OR purposely take yourself through the road less traveled ,where the solution is not known, but what is eminent is that you will not know what to do, and you'll have to find out and get through it & bultly put - <span style="font-style: italic;">be a creator of something out of nothing</span>. And my definition of getting through it is simple. I dont care if that dream is getting into being a Google or getting into the payroll of the indian post office's . can it be done ? if it can be - then great . Take solace in the fact and accept that there will situations of embarrassing ignorance, and a cost to innovation which you will learn the hard way. But if nobody has done it - then that's a couple of patents right there ! You might not be able to build a real estate search engine for the moon yet, but you could improvise on the fact that you've come up with it . Depending on how many years the concept is realistically away "<a href="http://en.wikipedia.org/wiki/Crossing_the_Chasm">crossing the chasm</a>" - you could probably patent, or discuss with your peers. Get recognition,possibly mocked at, but keep doing it until you are recognized by your peers as someone willing to <span style="font-style: italic;">try everything atleast twice</span>, and keep innovating within the community. And if you can't even get to your peers who are looking out the slightest glimpse of innovation & market erach - then how the hell do you plan on reaching your consumers half way across the world!?.<br /><br />Which bring me to the what you want to do again . Do you want to build years of expertise in a technology before launching your own company in a totally different technology ? ( Remember everyone in the industry is being watched - whether you notice it or not and the people who invest in you or your company - predominantly want you to continue doing what you have been doing). Tricky, tricky,tricky....<br /><br /><span style="font-weight: bold;">Does the language/medium/timer matter ?</span><br />On the other hand a hacker or an artist would know that it really does'nt matter what technology/medium you're working on. I'd love to could pick up ice-sculpting as a career if i thought that's the future i wanted to see myself in . What would linus torvalds, be doing if he was a kid today or if windows was 'nt closed source, would he have still hacked linux ? or build a great product that revolutionizes the next 50 years ? would the hexa hackers of yesteryears be working on hacking pixels on 384's or would they be building a holographic 3d second life ? would paul graham have manifested his ideas of "move to the web" in the form of a haptic interface to yahoo stores / amazon / ebay if he was hacking today?<br /><br />I think that great innovators can innovate independent of their times, and the languages they use ,and were'nt in any more a gifted environment in their days , as the one we are in today, or anytime in future. This btw, i reiterate is my view on all those flame wars and rants on programming languages . I think it could be best explained in this great little <a href="http://xkcd.com/">xkcd</a> strip that shows how different editors and talk about how old school they are, from the more prominent ones ,to and end up saying how <span style="font-style: italic;">"real hackers"</span> write in assembly language or else straight away magnetic tape or conjure voltage from the sky and binary. hilarious, and it's the first thought that comes to my mind when i see a language /flame war or rant.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://imgs.xkcd.com/comics/real_programmers.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px;" src="http://imgs.xkcd.com/comics/real_programmers.png" alt="" border="0" /></a><br /><span style="font-weight: bold;">Reverse Engineering the future</span><br />The fact of the matter is that we dont look to reverse engineer our future, and that my friend is the only way to write the future. How much are you going to keep studying before you think you 're ready to change the world ? I may not know the answer to that, but i'm happy to question the same. To question what the optimal qualifications, or the geography is to do what you want to do in life. In all the articles ive read on startup founders, and innovators - i'm surprised that i've never read of anyone mentioning "reverse engineering" your future. If you wanted to see yourself as the official advisor to the queen of england on quantum computing , or lead the <a href="http://www.ultimatefrisbee.org.in/">indian ultimate frisbee</a> team, or the ambassador to bermuda in secondlife or trade shoes with peter norvig.<br /><br />An example of a "reverse engineering your Future" log<br />-------------------------------------------<i><br />eg : Final Destination : ?<br />ideally , before I ...Final destination, ... i'd like to .... "leanr the intricacies of an IPO ", "learn to do a 'ballmer'"<br /></i><i>ideally , before ...</i><br /><i>ideally , before I ...0 , i'd like to "build an awesome product" and Y<br />ideally , before I ...Y , i'd like to "build a rockstar team" ...<br /></i><i>ideally , before ...</i><br /><i>ideally , before ...</i><br /><i>Ideally , before i get/do N, i'd like to do get/do( N -1 )</i><br /><br />Start off with a N = 5 goal , or a N = 2 goal . If i were to be scobleized next week , what would i have to liked to do this week, how many twitter message would i have to ping him with , etc ? If you wanted to get an grueling feature X done , what unknown thing would i have to read in the last 10 minutes before sleeping for the next month.<br /><br />And since the final destination keeps escalating as you progress through the <span style="font-style: italic;">N</span> things, based on your ability to execute what you want to do . The truth is that trying to start off with the Final Destination from day1 may not be quantifiable, but what is quantifiable is documenting if doing something is likely to get you closer to the eventual goal. Be it something trivial or absolutely drop-dead common sense. Thats the reason why It really struck me as to why people havent thought of how their personal identity on the internet would be jeopardized in step <span style="font-style: italic;">X</span> of your reverse engineering lifecycle because of something that sounds silly today. That's also another reason why it's pretty darn easy for one risk taker- to find another hign-risk -high-gain motivated person. Perhaps thats how companies flock in the ecosystem themselves. Ofcourse, it all makes sense. How many people woudl want to let go of opportunities that they dont take today ,when they think about it 10 years down the line - you'd give anything to go back and do it right ? The thought of all the things i could do in that each day, in one week , or even one year keeps me up several nights. Honestly, i'm particularly happy with the way things have gone over the last 6 months with <a href="http://hover.in/">hover tech</a> as well. It only has if anything only strengthened my conviction that you really can write the future if you want to.<br /><br />The question for you/me really is and was always supposed to be , what kind of future do want to write...<br /><br />Keep Clicking,<br />Bhasker V Kode<p style="text-align: right; font-size: 8px;">Blogged with <a href="http://www.flock.com/blogged-with-flock" title="Flock" target="_new">Flock</a></p>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com4tag:blogger.com,1999:blog-5148702.post-27721886348527490022007-12-17T02:49:00.000+05:302007-12-20T20:30:21.111+05:30First pipesCamp unconference<span style="font-size:100%;"><a href="http://pipes.yahoo.com/pipes/docs?doc=overview">yahoo! pipes</a> is one the most truly innovative applications that have provided a platform for application developers and end-users alike. And ever since their launch, several reviews later, it has grown well beyond being just a "</span><span style="">An interactive feed aggregator and manipulator</span><span style="font-size:100%;">" . Be it a <a href="http://www.blogger.com/www.fatpitchfinancials.com/573/top-5-hacks-for-intelligent-investors/">toolkit on Wall Street</a> , a <a href="http://www.blogger.com/www.gnucitizen.org/blog/5-generic-yahoo-pipes-hackers-cannot-live-without">utility on a box</a> or <a href="http://blog.wired.com/monkeybites/2007/10/yahoo-pipes-for.html">iphone hacks</a>.<br /><br /></span><span style="">I'm one of the organizers of the first ever <a href="http://pipescamp.pbwiki.com/"><span style="font-weight: bold;">pipesCamp</span></a>, which will be held in <a href="http://upcoming.yahoo.com/event/388488">Chennai,India on December 23rd, 2007 </a>. It 'll be interesting to bring the community together and just see can be hacked up, track work being done , and generally see how yahoo! pipes could churn out some amazing hacks and brilliant applications for bloggers, developers and end-users - at the same.<br /><br /></span><span style="font-size:130%;">what</span><br />unconference for yahoo! pipes hackers and hobbyists. sessions, workshops and a "hackday" for showcasing pipes.<br /><br /><span style="font-size:130%;">why</span><br />why not ! building a community around the yahoo! pipes enthusiasts, share ways to maximize the power of the utility itself, learn how your favourite pipes are built, show off neat tricks of your own , and spread some "pipes" love to the community.<br /><br /><span style="font-size:130%;">when</span><br />December 23rd, 2007 ( Sunday)<br />10 am - 5 pm IST<br /><br /><span style="font-size:130%;">where</span><br />Chennai , India<br />( Check wiki for venue details )<br /><br /><br /><span style="font-size:130%;">what next ?! </span><br /><a href="http://pipescamp.pbwiki.com/">Check out pipesCamp</a> right now,or <a href="http://upcoming.yahoo.com/event/388488">on upcoming</a>! Add a talk of your own , register by adding your name to the participants list, and get hacking !<br /><br /><span style="font-size:100%;"><span style="font-size:100%;"><a href="http://hover.in/">hover.in</a> , the product/company i've co-founded with Arun ( <a href="http://trak.in/">of trak.in</a> fame ) , will be one of the sponsors of the event, and we're looking to meet the yahoo! pipes enthusiasts out there, and have loads of fun while at it. </span></span>For more about the event as well as sponsorship info, buzz me at +91 988 4545 944 , or send a mail over to kode at hover dot in .<br /><br />site : <a href="http://pipescamp.pbwiki.com/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://pipesCamp.pbwiki.com</a><br />upcoming : <a href="http://upcoming.yahoo.com/event/388488" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://upcoming.yahoo.com<wbr>/event/388488 </a><br />y! group : <a href="http://tech.groups.yahoo.com/group/pipesCamp/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://tech.groups.yahoo.com<wbr>/group/pipesCamp/ </a><br />y! pipe : <a href="http://pipes.yahoo.com/pipes/pipe.info?_id=e56c09bb5c8843ea700638e8ac1ee78d" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://pipes.yahoo.com/pipes<wbr>/pipe.info?_id=e56c09bb5c8843ea<wbr>700638e8ac1ee78d </a><br /><br /><br /><span style="font-weight: bold;">Keep Clicking,</span><br />Bhasker V Kode<br /><p class="technoratitag">Technorati Tags: <a href="http://www.technorati.com/tags/unconference" rel="tag">unconference</a>, <a href="http://www.technorati.com/tags/pipesCamp" rel="tag">pipesCamp</a>, <a href="http://www.technorati.com/tags/yahoo" rel="tag">yahoo</a>, <a href="http://www.technorati.com/tags/pipes" rel="tag">pipes</a>, <a href="http://www.technorati.com/tags/chennai" rel="tag">chennai</a>, <a href="http://www.technorati.com/tags/event" rel="tag">event</a></p>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com5tag:blogger.com,1999:blog-5148702.post-41386927241037760372007-10-29T08:18:00.000+05:302007-11-14T01:24:31.703+05:30Squeak, Erlang and Startups @ chennai.rb meet<a href="http://upload.wikimedia.org/wikipedia/en/thumb/2/22/UltiClubNationals05Layout.jpg/300px-UltiClubNationals05Layout.jpg"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 202px; height: 146px;" src="http://upload.wikimedia.org/wikipedia/en/thumb/2/22/UltiClubNationals05Layout.jpg/300px-UltiClubNationals05Layout.jpg" alt="" border="0" /></a><br />I was pleasantly surprised when the word 'erlang' sprung up in a discussion at ilugc threads courtesy one of <a href="http://www.workingwithrails.com/person/4895-vamsee-krishna-kanakala">Vamsee</a> 's posts. I was naturally excited and looked forward to the talk scheduled at the local ruby user group <a href="http://groups.google.com/group/chennairb">chennai.rb</a> on the same Saturday. Weekends usually begin at the beach at 5.30am to sweat it out in a awesome non-contact rugbie like sport called <a href="http://en.wikipedia.org/wiki/Ultimate_%28sport%29">ultimate frisbee</a>. Check out the <a href="http://sports.groups.yahoo.com/group/chennai_ultimate_frisbee/">yahoo group</a> which has a 60 members and growing , and include most of the 20-30 odd people who turn up before sunrise on weekends despite the ballistic rains!<br /><br />Speaking of rains, i guess the rubyists in chennai did think twice before venturing out yesterday . The venue was also changed last minute, but i had no problem of having a meet with just 5-6 people. And i'm glad i did go ! There was John - from Tachyon whose innovative work i've had <a href="http://bosky101.blogspot.com/2007/09/where-are-indian-hackers-boskys-reply.html">real appreciation</a> for earlier,(they've made quilpad and rediff even invested in them some time ago)<br /><br />John's talk was interestingly on squeak -an avtar of smalltalk in which he demo'ed the tightly integrated concept of user and system generated object , scriptable etoys, several ways in which programming could be tackled by children in a more user-friendly and 'just works' manner . It's a real treat to have someone like him around who understands the intricacies of so many languages and core computer science concepts. I've attached the mind map exported jpegs (cmaps)of both talks ,and you access my <a href="http://bhaskervk.com/cmaps/">cmaps of the talks here</a>.<br /><br />Vamsee's talk on erlang started with the history and introduction of the language , neatly swapping between code showing the assignment,basic operations and arithmetic, strings handling, tuples atoms and lists, and indeed was a nice opportunity to throw open the discussion comparing with the same in other languages.<br /><br /><a href="http://gapp.wordpress.com/">Gapp</a> , was there as well and he talked about his upcoming project that involves capturing one moment in the lives of chennai' ites, more specifically - November 3rd 2007 by aggregating pictures into a flickr pool with snapshots of wherever u are in chennai at that point of time . check out the details at the <a href="http://www.311pm.com/">official 311pm website</a>.<br /><br />Overall, i think with the talks especially of the one on erlang, the stage is set to work on yaws , and take <a href="http://hover.in/">the startup</a> to the next step indeed 8 ) Railsfactory and reviewsaurus apart from a 360 degree employee turned up. It was a little funny when they realised that i was aka Bosky since I've grown a real thick beard. I usually always introduce myself as Bhasker. Nice to know that ur known in some circles ! 8 ) .<br /><br />After the talk, we talked about what all of us were upto. Very exhilarating to know that each and everyone who turned up were involved in either a 2-10 strong startup or some project creative project . Vamsee talking about the good,bad and the ugly facets of working on google knockoffs . Challening all the same ! I might even think of taking two seats in their office as well for working on my venture . Left around 7-8, Gapp tells me that they even continued with beer and more talk till 11. Shoot,missed out on that 8 ) !<br /><br />Vamsee also suggested that i, or anyone for that matter have a shot at the next speaking session which would continue to be at his neat office of his company <span style="text-decoration: underline;">Viamentis</span>. Clearly the ruby user group definitely stands out because we did'nt even have a formal session on ruby itself ,although we did compare other languages and compare notes with the nice projector (coutesy sayid of TKF) Perhaps i would have a go at the functional nature of javascript ,or perhaps hopefully even erlang. I'm sure <span style="text-decoration: underline;">PVS</span> would have loved to be at the meet, especially since he's the one who encouraged me to venture into the abyss that is <a href="http://erlang.org/">erlang</a> by his experiments with ejabbered and take concurrent programming . Moreover, The <a href="http://www.sics.se/%7Ejoe/apachevsyaws.html">apache Vs yaws</a> debate seems one-sided enough to convince me to get my own testing environment setup on my lappy. As with most languages, the best way i feel to learn a language is indeed porting x from language A to language B. Looking forward to a little unlearning , more such meets ,more frisbee on weekends ,and a lot of addictive hacking ahead 8 )<br /><br /><span style="font-weight: bold;">Keep Clicking,</span><br />Bhasker V Kode<br /><p class="technoratitag">Technorati Tags: <a href="http://www.technorati.com/tags/chennairb" rel="tag">chennairb</a>, <a href="http://www.technorati.com/tags/ruby" rel="tag">ruby</a>, <a href="http://www.technorati.com/tags/squeak" rel="tag">squeak</a>, <a href="http://www.technorati.com/tags/tachyon" rel="tag">tachyon</a>, <a href="http://www.technorati.com/tags/vamsee" rel="tag">vamsee</a>, <a href="http://www.technorati.com/tags/erlang" rel="tag">erlang</a>, <a href="http://www.technorati.com/tags/mindmap" rel="tag">mindmap</a>, <a href="http://www.technorati.com/tags/gapp" rel="tag">gapp</a>, <a href="http://www.technorati.com/tags/bosky101" rel="tag">bosky101</a></p>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com0tag:blogger.com,1999:blog-5148702.post-55996327576353970282007-10-27T01:25:00.000+05:302007-10-27T01:47:27.179+05:30"The AJAX Experience" sites are cool. But Why Is It In Flash?<p style="margin: 1em 0pt 3px; line-height: 115%; font-family: georgia;">"Hopefully someday - good friend of mine" Mike Arrington ; ) started this awesome series on techcrunch . I'm so glad this came up - i've been itching to tell it to as many people as possible ...<br /><br /></p><div style="text-align: center; font-family: georgia; font-weight: bold;"> <a href="http://www.techcrunch.com/2007/10/25/googles-searchmash-adds-snap-shot-previews-but-why-is-it-in-flash/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">Google’s SearchMash Adds Snap Shot Previews. But Why Is It In Flash?<br /><br /></a></div><div style="text-align: center;"> </div><div style="text-align: center; font-weight: bold;"><a href="http://www.techcrunch.com/2007/10/25/check-out-the-new-windows-home-server-demo-but-why-is-it-in-flash/" rel="bookmark" title="Permanent Link to Check Out The New Windows Home Server Demo. But Why Is It In Flash?">Check Out The New Windows Home Server Demo. But Why Is It In Flash?</a></div><br />So My Contribution to the series...<br /><div style="text-align: center;"><span style="font-weight: bold;">The AJAX Experience Conference sites are cool. But Why Is It In Flash? : )</span><br /><span style="font-weight: bold;"></span></div><span style="font-weight: bold;"><br /></span>the only javascript/ajax on this site is probably to detect the flash version...shame! Know of any more unknown anomalies ,join in the fun by tagging your post <a href="http://technorati.com/tags/butwhyisitinflash">butWhyIsItInFlash</a> ! ; )<br /><br /><i>Note : I still have great respect for your work, <a href="http://ajaxian.com">Ben & Dion</a>. 8 )</i><br /><br />Keep Clicking,<br />Bhasker V Kode<br /><br /><p class="technoratitag">Technorati Tags: <a href="http://www.technorati.com/tags/butWhyIsItInFlash" rel="tag">butWhyIsItInFlash</a>, <a href="http://www.technorati.com/tags/ajaxian" rel="tag">ajaxian</a>, <a href="http://www.technorati.com/tags/flash" rel="tag">flash</a>, <a href="http://www.technorati.com/tags/techcrunch" rel="tag">techcrunch</a>,<a href="http://www.technorati.com/tags/mikearrington" rel="tag">mike Arrington</a>, <a href="http://www.technorati.com/tags/microsoft" rel="tag">microsoft</a>, <a href="http://www.technorati.com/tags/google" rel="tag">google</a></p>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com1tag:blogger.com,1999:blog-5148702.post-30540834609159549552007-10-26T17:26:00.000+05:302007-10-26T18:10:38.884+05:30Shared OPML, and dektop rss reader productivityOff late i've been adding a lot more blogs from media/ blogosphere (techcrunch 'ish blogs, company blogs , and so on ) apart from the developer blogs that i cherish the most . One of the categories that i have been having a close watch and building on are<a href="http://bosky101.blogspot.com/2007/09/where-are-indian-hackers-boskys-reply.html"></a> indian developers who are being there and doing that ; ) You'll most of the individuals mentioned in <a href="http://bosky101.blogspot.com/2007/09/where-are-indian-hackers-boskys-reply.html">my post about indian hacker's</a> in the opml file as well . Ofcourse, most of the list are people I would personally know or like to know but as a technology / web geek i think that sharing this list would really help introduce you to a lot of really good blogs.<br /><br />I'm also surprised <span style="font-weight: bold;">why there is'nt any viral site for sharing rss reader opml files </span>?!(or is it just my ignorance!). So i'm going to upload my opml files once a quarter so that it might be useful to other hackers, entrepreneurs and technology watchers like me .<br /><br />And here's for an awesome tip . Sure it wont be easy reading up on 1000+ , i'd prefer to take my time and read most of them . (especially if u skip a day or two ! ) SO what i've done is what i think a more leisurely way to read my favourite blogs without the clutter and time constraints .<br /><br /><span style="font-weight: bold;">Here's what i did two days back :<br /></span>I installed a desktop rss reader on my laptop. I imported my google reader opml . Once a day i go online and let it autoupdate . Finito ! now i can take my time, change the themes ,font's ,add rating ,see my reading statistics, custom tags, searches ,bookmarks, even blog from it, and more importantly - take my time to read all the 1000+ feed items ,as and when i want.<span style="font-weight: bold;"><br /><br /></span><span style="font-weight: bold;">step 1: </span>exported my google opml file.<br />im guessing that you are familiar with rss readers, and blogs and rss . If you use a bloglines or a google reader there should be a export subscription /export feeds / export as opml option somewhere. save the file on your system. Here are my <a href="http://bhaskervk.com/opml/">google reader opml files</a>.<br /><br /><span style="font-weight: bold;">step 2: </span>downloaded a desktop rss reader<br />I expected a little more from google readers offline operation that used google gears. sadly though it just did'nt work . Moving on, i looked around for a couple of desktop rss readers. ended up on just installin one though called <a href="http://www.blogbridge.com/products-services/blogbridge/visual-tour/">blogbridge</a> . FYI : a nice link that higlights <a href="http://blogaboutyourblog.com/2007/07/15/9-reasons-for-a-blogger-to-use-a-desktop-rss-reader/">9 reasons to use desktop readers</a>, and here's another one that tells you how to <a href="http://www.blogger.com/www.bigpawsonly.com/desktop-rss-reader-features.htm">make your own desktop rss reader</a>. i then imported the opml file, and can choose as to when it should update (either on program startup or when i say to get updates )<br /><br /><br />i still like to still to maintain / add feeds ,etc to my online rss reader(google reader) since i can access them when im not on either my machine or the laptop. another hassle is that after reading posts from the desktop reader- they wont be 'marked as read' ,but i still think that the move has let me catch up with the 'posts that i always wanted to take time to read' and the 'blogs i never had time to read and so on' ,and all this offline . I think it's worth it thinking /trying it out.<br /><br /><span style="font-weight: bold;">Keep Clicking,</span><br />Bhasker V Kode<br /><br /><p class="technoratitag">Technorati Tags: <a href="http://www.technorati.com/tags/opml" rel="tag">opml</a>, <a href="http://www.technorati.com/tags/rss" rel="tag">rss</a>, , <a href="http://www.technorati.com/tags/reader," rel="tag">reader,</a>, <a href="http://www.technorati.com/tags/google" rel="tag">google</a>, , <a href="http://www.technorati.com/tags/desktop" rel="tag">desktop</a>, , <a href="http://www.technorati.com/tags/feeds" rel="tag">feeds</a>,, <a href="http://www.technorati.com/tags/bosky" rel="tag">bosky</a></p>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com2tag:blogger.com,1999:blog-5148702.post-58339328771873956612007-10-02T02:36:00.000+05:302007-10-02T03:00:41.719+05:30Thoughts on Returnable, and Contextual search and advertising platforms<p>I was pleasantly surprised with this post by <a href="http://www.podtech.net/scobleshow/technology/1638/proximic-brings-new-contextual-search-and-advertising-platform">Robert Scoble up on podtech</a>...</p><p>The best part of being a startup is that you are forced to tackling specific problems.<br /></p> <p>It was a few months after i started the <a href="http://returnable.org/">Returnable Project</a> in March,2007 that i heard about the 11$mn odd funding that israeli startup kontera had received. Returnable , was pretty similiar - i said to myself but with a more developer and architectural perspective . It started off, and continues to be a small pet project i maintain with <a href="http://blog.pvsundarram.com/">PVS</a> - that deals with content delivery for end-user programmers ,but more catered to developers and the software engineering spectrum. It was to let ordinary end-users to concentrate on what to bring in in-text, instead of the how. Another entrepreneur buddy was also discussing ways to invoke returnable within their product. And so it is with a sense of pride and excitement that i assess that for a open source project I think it has served as a testing bed for things to come. I definitely am glad to see the buzz "contextual delivery" , apart from the the continued voids and irregularities that are still persistently haunting adopters of in-text content and ad delivery.<br /></p><p>There are already a lot of players in the advertising space who offer in-text advertisements, and so on. There's Kontera, Miva , snapshot (that does a good job with the screenshots), addThis (fo social bookmarks) and so on. Can companies like Proximic or for that matter Kontera afford to give competitors another five years before building “contextual content delivery” and “in-text advertising” expertise ?</p><p></p>I honestly don’t think so 8 )<br /><br /><b>Keep Clicking,</b><br />Bhasker V Kode<br /><p><br /><span class="technoratitag">Technorati Tags: <a href="http://www.technorati.com/tags/scobleizer" rel="tag">scobleizer</a>, <a href="http://www.technorati.com/tags/podtech" rel="tag">podtech</a>, <a href="http://www.technorati.com/tags/in-text" rel="tag">in-text</a>, <a href="http://www.technorati.com/tags/contextual" rel="tag">contextual</a>, <a href="http://www.technorati.com/tags/intext" rel="tag">intext</a>, <a href="http://www.technorati.com/tags/content" rel="tag">content</a>, <a href="http://www.technorati.com/tags/delivery" rel="tag">delivery</a>, <a href="http://www.technorati.com/tags/bhaskervk" rel="tag">bhaskervk</a></span><br /></p>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com0tag:blogger.com,1999:blog-5148702.post-35188868437061138472007-09-13T23:19:00.000+05:302007-09-29T23:27:13.219+05:30where are the indian hacker's ? : Bosky's replyI was reading this thread on ycombinator news, that went :"<a style="font-style: italic;" href="http://news.ycombinator.com/item?id=54085">Where are the Indian hackers?</a><span style="font-style: italic;" class="comhead"> "</span><br /><br />About indian hackers... ohh they're out there all right... they're out there.<br /><br />indian cities like chennai ,bangalore,bombay ,pune and delhi have really making the most of the unconference,hacker & silicon valley culture that's slowly building up.<br /><br />There have always been examples of startups with a combination of design and development teams across india and us can do . take zimbra, riya , slingshot ,et cetera, or the bigger and more established zoho and slideshare . but for the smaller ones, you need to keep your eyes glued to unconferences .<br /><br />If you're flying down to india, you might want to subscribe to <a href="http://upcoming.yahoo.com/group/3556/"><span style="font-weight: bold;">http://upcoming.yahoo.com/group/3556/</span></a> for the upcoming unconferences .<br /><br />Its run by gud friend - and pythonista <a style="font-weight: bold;" href="http://siddhi.blogspot.com/">siddhi govindraj</a> who for instance runs a one man project management s/w called silver stripe. Hey i think i might even talk more about the best hacker's in india i've had the privilege of ...uhmm adding to their feed subscriber list 8 )<br /><br /><a href="http://ravimohan.blogspot.com/"><span style="font-weight: bold;">ravi mohan</span></a>, who just happened to port all of google director peter norvig's AI book code to java - is a one-man hacker working on nothing but the best of AI related work for the past few years.<br /><br /><a style="font-weight: bold;" href="http://www.swaroopch.com/">swaroop ch</a> , whose python hackery got him into adobe's flex team in india ,has written a book on python .he's one of the inventors of the ipod charger called ion.<br /><br /><span style="font-weight: bold;"><a href="http://t3.dotgnu.info/blog/">gopal v</a> </span>, heads the open source project dotGNU,apart from contributions to native php code from yahoo's bangalore office is one of the most talented native code hacker's out there when it comes to the open source stack.<br /><br /><a style="font-weight: bold;" href="http://sriramkrishnan.com/">sriram krishnan</a>, who 's story and 'curve to geekdom' is possibly the most enchanting, is a great example of a hacker getting noticed in the blogosphere, and all the way to microsoft.he nows works in the popfly team at redmond.<br /><br /><a style="font-weight: bold;" href="http://blog.sidu.in/">sidu ponnappa</a>, is very 'agile' hacker with very diverse skill sets working in thoughtworks bangalore, apart from a very interesting mobile sideline project with a few friends called inactiv .<br /><br /><a href="http://abdulqabiz.com/"><span style="font-weight: bold;">abdul qabiz</span> </a>, macromedia/adobe/yahoo/ and now hacker at Nanocasts r&d (called Mixercast ) is a hacker in the flash/flash space.<br /><br /><a style="font-weight: bold;" href="http://pvsun.blogspot.com/">pvsundarram</a>, who's addiction for designing scalable apps from native mvc to jabber & erlang ,to javascript hackery has taken this hacker to be invited for a number of startups in bangalore,bombay and chennai. he now works at zoomin ,and was my colleague at tutorvista where we worked on the whiteboard & chat collaboration product.<br /><br /><a href="http://i5bala.blogspot.com/"><span style="font-weight: bold;">balakumar muthu</span></a> - along time java based hacker, <a style="font-weight: bold;" href="http://gapp.wordpress.com/">ganesh app</a> for robotics and c++, <a href="http://www.blogger.com/labsji.wordpress.com"><span style="font-weight: bold;">labsji</span></a> for smart gadgets, anantha narasimhan ,<a style="font-weight: bold;" href="http://seshukarthick.com/">Seshu Karthick</a> for web2.0 , the brilliant <a href="http://tachyon.in/people.html">bunch of <span style="font-weight: bold;">hackers at tachyon</span></a> , <span style="font-weight: bold;">antano solar john</span> for AI , <span style="font-weight: bold;">vipin</span> from au-kbc for networking , .... i could go on . (maybe u can suggest more ?)<br /><br />Heck, <a href="http://bhaskervk.com/"><span style="font-weight: bold;">even i</span></a>' ve quit and now finally taken time off to hack up a few open source projects, apart from bootstrapping for the startup i'm co-founding . (Note: this is where i hint that ppl interested in joined me can ping me ;) )<br /><br />one thing about all of them is that they're all got a very diverese skillset,and can express themselves verry well.i could go on with more people i know..hmm wish i could export my google opml .... The day of reckoning will however be when the first ycombinator with indian hacker's . Grab a couple of the names from above and make a team - now that my friends will be history in the making 8 )<br /><br />But anyways - in the end we've can't say that we don't have the hacker's right now . i think it's the "getting it to market" ability that we are still perfecting. and part of that has to do with the eco-system for startups and entrepreneurs...<br /><br />The good news is that that's exactly what is fortunately getting better ... in fact when i read "icon : steve jobs" a few quarters ago - i could'nt help but notice how lucky i was to be in india right now. Very much reminiscent of the hacker culture from the 1980's ...<br /><br />Can't wait to get started 8 )<br /><br /><span style="font-weight: bold;">Keep Clicking,</span><br /><br /><a href="http://bhaskervk.com/">Bhasker V Kode</a><br />Hacker, and proud to be indian... 8 )<br /><br />PS: i wish someone updated the nice compilation of <a href="http://www.vicky.in/straightfrmtheheart/wp-content/uploads/2006/10/india-20.jpg">indian startups logo's </a><br /><br /><span style="font-style: italic;">UPDATE1: hey I just heard about Yahoo 's </span><a style="font-style: italic;" href="http://t3.dotgnu.info/blog/yblr/open-hackday-announce.html">HackDay India</a><span style="font-style: italic;"> . well that might not be too bad a place to find 200 odd hackers assemble together 8 )</span><br /><br /><p><span class="technoratitag">Technorati Tags: <a href="http://www.technorati.com/tags/hackers" rel="tag">hackers</a>, <a href="http://www.technorati.com/tags/hack" rel="tag">hack</a>,<a href="http://www.technorati.com/tags/hackdayIndia" rel="tag">hackdayIndia</a>, <a href="http://www.technorati.com/tags/india" rel="tag">india</a>, <a href="http://www.technorati.com/tags/indian" rel="tag">indian</a>, <a href="http://www.technorati.com/tags/startups" rel="tag">startups</a>, <a href="http://www.technorati.com/tags/bhasker" rel="tag">bhasker</a>, <a href="http://www.technorati.com/tags/bosky" rel="tag">bosky</a></span><br /><br /></p>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com5tag:blogger.com,1999:blog-5148702.post-26939981429344231882007-08-17T00:11:00.000+05:302007-08-21T19:04:24.849+05:30Updates from Indian Independence Day ,2007<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bhaskervk.com/screenshots/article.php?story=20070815102509264"><img style="margin: 10px; float: left; cursor: pointer; width: 502px; height: 229px;" src="http://bhaskervk.com/screenshots/images/articles/20070815102509264_1.gif" alt="" border="0" /></a><br /><span style="font-weight: bold;">Updates <br /></span><ol><li>Revamped my personal web site over at "<a href="http://bhaskervk.com/">Bhaskervk.com</a>"<br /></li><li>Added a new comic series : <a href="http://bhaskervk.com/screenshots">Screenshots, by Bosky</a> <span style="font-size:78%;">(thnx <a href="http://gapp.wordpress.com/">sagaro</a> for the trackback)</span></li><li><span style="font-size:78%;"><span style="font-size:100%;">Reading up on a few interesting mailing lists over at <a href="http://flex-india.org/">flex_india</a> google group, hdiidc , and barcamp_Bangalore (both yahoo groups) .<br /></span></span></li><li><span style="font-size:78%;"><span style="font-size:100%;">Reading up on a lot of interesting indian techie's blogs. (speaking of which , it would be great to be able to have a sumup of indian geek's blog posts)</span></span></li><li><span style="font-size:78%;"><span style="font-size:100%;">Contemplating on lot of ideas on, ways to improve the <a href="http://returnable.org/">Returnable</a> project, reading up the parse trees while i'm half way through compiling x to y , whats next for startups, learning and the idea of higher education abroad, and the future... hmmm</span><br /></span></li></ol>Amidst some domain renewal and hosting provider hassles, ended up continuing with square brothers . They happen to host the university results, and have not problems with them personally. Just got pissed when bhaskervk.com showed up with the default taken sort of mesage, since i delayed my payment by a day since they icici bank could'nt confirm them as a payee. Most of the times, you should'nt have any problems , but now and then you do have certain glitches and usability problems. Like long periods of 'wait while we update' lasting days for even stuff like changing numbers, or that it should probably enter the 'hall of shame' for not supporting firefox most of the time and promptly proposing ie. Not that i have against ie, but as india's biggest private bank, lack of support for atlllleast A-grade browsers is an absolute show-stopper.<br /><br />I also added a little comic strip called <a href="http://bhaskervk.com/screenshots">'screenshots'</a>, for all the <span style="font-style: italic;">vetti </span>time that i have on my hands. Plus its a great outlet for some artisitc creativity. check it out some time. The image you see at the top of this post ,is the <a href="http://bhaskervk.com/screenshots/article.php?story=20070815102509264">independence day special (#5)</a> .<br /><br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhuU6_fHo29PD5Zlve7zIaeP865L7go5e8BUyvb5hHUkc3JqawrOI-ITJZSzr_NIZnA2CD3-WkrJR5fLO23zD4IfzvXuMdxTqB_FOQb8Evq9WXnq2gUKGLHplbXBtv2u7XG5zTNHA/s1600-h/del.GIF"><img style="margin: 0px auto 10px; float: left; text-align: left; cursor: pointer; width: 354px; height: 246px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhuU6_fHo29PD5Zlve7zIaeP865L7go5e8BUyvb5hHUkc3JqawrOI-ITJZSzr_NIZnA2CD3-WkrJR5fLO23zD4IfzvXuMdxTqB_FOQb8Evq9WXnq2gUKGLHplbXBtv2u7XG5zTNHA/s320/del.GIF" alt="" id="BLOGGER_PHOTO_ID_5099385962422475538" border="0" /></a>Having just completed working on <a href="http://tutorvista.com/now">a vector-graphic product</a> myself, i found the thread on the flex india user group about 2d,3d advancements in flex particularly interesting. Check out thus <a href="http://dev.getoutsmart.com/os3d/demos/videoroom/">awesome demo of second-life like capabilities within flex</a> by a company called outsmart and you'll know what i'm talking about.<br /><br />If you find this interesting, you will definitely find the stuff over at Aviary, compelling - though it does a little over ambitious.<a href="http://www.creationonthefly.com/tools" onclick="javascript:urchinTracker ('/outbound/www.creationonthefly.com');">More than 14 online tools</a> of varying complexity: an image editor, color swatch generator, pattern generator, vector-based editor, 3D modeler, audio editor, music generator, video editor, desktop publishing tool, word processor, painting simulator, custom image product creator, photo analyzer, and file system to store it all on. phew ! Check out their <a href="http://www.creationonthefly.com/blog">well updated and informative blog</a> as well.<br /><br />Google, btw has been talking about a <a href="http://googleblog.blogspot.com/2007/08/namaste-india.html">special gift for india,</a> celebrating it's i-day. wonder if it has anything to do with a mapping /google earth related.<br /><br />Coming to Returnable, i've seen a couple of similiar prototpes springing up . First i saw a israeli startup called koncara getting its second round of funding with in-text advertising. Returnable can do this, but now just ads but also in-text content on tooltips at different events .Secondly, the <a href="http://ajaxian.com/archives/purple-include-transclusions-you-know-you-want-them">purple -include library</a> profiled by <a href="http://ajaxian.com/archives/purple-include-transclusions-you-know-you-want-them">ajaxian.</a> While they have used src,and dont have support for events, returnable supports the three events : onhover,onclick and onload. Moreover, Returnable uses the href (forward compatible for all elements in the next version of xhtml5) and users can get the content either in-text OR as a tooltip ! <a href="http://pvsun.blogspot.com/2007/05/returnable-hrefhttponhoverreturnableorg.html">PVS</a>, my c0-developer at Returnable, even managed to get a returnable element tooltip inside the title of a blogger post !<br /><br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://pvsun.blogspot.com/2007/05/returnable-hrefhttponhoverreturnableorg.html"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 432px; height: 255px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizlEgbMLatliwGjh6WhqhIuiFV2oqVE9nvqP32IGDwvT2qozqbI3vdRNGn0kHpL_2uEmUcwdo4mmWP0NfrX-UqQf4x8f3UPmtC5rBhUpti_N2h4JStFCqreEzmjybWFFKzmpmUWQ/s320/del.GIF" alt="" id="BLOGGER_PHOTO_ID_5099395973991242530" border="0" /></a><br /><br />I'm glad the Returnable Project, has taken a lead in this pioneering end-user programming methodology ,in using their inherent knowledge of URL's to expose a simnple HTML api to spawn intuitive behaviour on the web. Check out more on <a href="http://returnable.org/">The Returnable Project</a> , and the <a href="http://sourceforge.net/projects/returnable/">project site</a> for more information.<br /><br />So many things to read & write about , so little time ! btw, does anyone know of any good blogs to get lil tidbits like what ive posted above ? I'd love to check them out ! 8 )<br /><br />Keep Clicking,<br />Bhasker V K<br /><br /><p class="technorati">Technorati Tags: <a href="http://www.technorati.com/tags/bhasker" rel="tag">bhasker</a>, <a href="http://www.technorati.com/tags/bosky" rel="tag">bosky</a>, <a href="http://www.technorati.com/tags/screenshots" rel="tag">screenshots</a>, <a href="http://www.technorati.com/tags/flex_india" rel="tag">flex_india</a>, <a href="http://www.technorati.com/tags/independence" rel="tag">independence</a>, <a href="http://www.technorati.com/tags/purple-include" rel="tag">purple-include</a>, <a href="http://www.technorati.com/tags/returnable" rel="tag">returnable</a>, <a href="http://www.technorati.com/tags/vector" rel="tag">vector</a>, <a href="http://www.technorati.com/tags/graphics" rel="tag">graphics</a></span><br /></p>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com2tag:blogger.com,1999:blog-5148702.post-22223419040851627392007-08-15T18:25:00.000+05:302007-08-22T18:09:43.828+05:30WebRunner Vs Adobe AIR shootout : My views<p>I have been keeping a causal watch of what Mark Finkle has been upto with WebRunner. And this post is in reference to the the debate between the warring camps, <a href="http://starkravingfinkle.org/blog/2007/08/comparing-webrunner-and-adobe-air/trackback/">mark finkle</a> from mozilla,<a href="http://starkravingfinkle.org/blog/2007/03/site-specific-browser-webrunner/">working</a> <a href="http://starkravingfinkle.org/blog/2007/07/webrunner-05-now-with-more-power/">on</a> WebRunner and <a href="http://blog.digitalbackcountry.com/?p=816">Ryan Stewart </a>with Adobe, talking about <a href="http://blog.digitalbackcountry.com/?p=989">Adobe AIR</a>. They have been <a href="http://starkravingfinkle.org/blog/2007/08/comparing-webrunner-and-adobe-air/">exchanging some thoughts</a>, I thought i would as well.<br /></p><br /><br />Here it is ...<br /><table width="100%" style="font-size:12px;"><br /><tbody><tr><br /><td style="font-weight: bold;" width="50%"><span style="font-size:130%;">webrunner</span></td><br /><td style="font-weight: bold;" width="50%"><span style="font-size:130%;">adobe air</span></td><br /></tr><br /><tr><br /><td valign="top"><br /><ul style="margin: 2px; padding: 0px;"><br /><li>having site specific browsers seemed like a gud idea.</li><br /><li>I dont want to open stuff in new tabs . How about having a different desktop Firefox Instance (FYI:i dint say 'process') for every SSB.</li><br /><li>no "virtual machine"ish sort of setup, but simply is Firefox-tweaked and called WebRunner as the run-time for apps</li><br /><li>target users: people who like a seperate webrunner for each site </li><br /><li><span style="font-weight: bold;">upside : </span>(yet to find any !)</li><br /><li><span style="font-weight: bold;"> downside & what i would have liked to see : </span>why on earth would i want something that gives absolutely <b>no value </b>to me as a developer !!! if webrunner concentrated on building a class library with decent system access documentation(sorry to say,i still dont find the mozilla docs on these half as useful or readable compared to say flex docs). forget even building your own, atleast i shud have interfaces in webrunner for all possible classes and then plug'n'play with js libraries like jquery /dojo or hell make a new project on mozilla just to create just the plug'n'play interfaces for webrunner first,and maybe a decent js api for creating,accessing SVG. It really pisses me off every time webrunner is compared to adobe air. its beyond comparison, mozilla and webrunner cannot be sit back on the laurels of firefox for the success of webrunner. instead it shud actually code a class library that can be shipped with webrunners or ssb's or whatever 'schemes' Mark Finkle has on his mind. Coz personally webrunner does'nt even seem like an app worth talking just because it's stripping off the firefox browser. The first Webrunner was prototyped in 06, and not one new feature that was'nt courtesy of firefox! That's sad even compared to the progress made by silverlight - a late entrant! Webrunner, needs to innovate as well, and quick - if it wants to really play with in the big league !</li><br /></ul><br /></td><br /><td valign="top"><br /><ul style="margin: 2px; padding: 0px;"><br /><li>having flash apps work for the desktop seems like a gud idea.</li><br /><li>I don't want to open a browser for every flash app. How about having a single desktop run-time for all adobe air apps</li><br /><li>"Virtual Machine"ish Adobe AIR is the run-time for my apps</li><br /><li><span style="font-weight: bold;">target users: </span>people who like a seperate webrunner for each site </li><br /><li><span style="font-weight: bold;"> downside: </span>another process clobbering with my cpu memory if it becomes popular !</li><br /><li><span style="font-weight: bold;"> upside : </span>adobe has effectively solved a major porting problem by allowing flash developers to write in a language they prefer, and access the beautiful and growing class libraries for everything from system ,to math,to vector graphics.</li><br /><li>what i would have liked to see : just keep it going ... and don't bloat the runtime size too quickly!</li><br /></ul><br /></td><br /></tr><br /></tbody></table><br /><p>By the way,i'm not biased towards any one side (or the third - silverlight 8 ) ), but have always respected both mozilla, firefox and everyone involved ; as well as the phenomenal innovation shown by adobe with flex and apollo.</p><br />Keep Clicking,<br />Bhasker V KodeBoskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com0tag:blogger.com,1999:blog-5148702.post-6462500826296926562007-07-16T22:57:00.000+05:302007-07-16T23:34:19.922+05:30Export excel sheet data to wiki's and html - Introducing ExcelKoder<i>The Evening of Junly 16th,2007 </i><br /><br />Guess ,i could'nt wait for the hackernight/compilers & interpreters collective at <a href="http://barcampbangalore.org/">barcamp Bangalore</a> happening in a few weeks<br /><br />Here's a small utility i wrote one evening,while figuring out how to share plans for scheduling of barcamp bangalore. Geeky part, is that everything from css,to js and html written in this demo was done in good ol' notepad 8 )<br /><br />Here's the link to the<a href="http://bhaskervk.com/js/excelkoder/demo.html"><span style="font-weight: bold;"> ExcelKoder demo</span></a>. Might even host it up as a google project .hmmm.<br /><br />Keep Clicking,<br /><b><returnable href='http://onhover.returnable.org/tooltip.text/This tooltip is powerd by "The Returnable Project",<BR>returnable.org,<BR>Keep Clicking,<BR>Bosky<BR>!<img src="http://photos1.blogger.com/blogger/5004/157/1600/bhaskerSNAP1.jpg"/>'>Bhasker V Kode</returnable></b><br /><p><br /><span class="technoratitag">Technorati Tags: <a href="http://www.technorati.com/tags/javascript" rel="tag">javascript</a>, <a href="http://www.technorati.com/tags/bcb4" rel="tag">bcb4</a>, <a href="http://www.technorati.com/tags/barcampbangalore" rel="tag">barcampbangalore</a>, <a href="http://www.technorati.com/tags/hack" rel="tag">hack</a>, <a href="http://www.technorati.com/tags/excel" rel="tag">excel</a>, <a href="http://www.technorati.com/tags/wiki" rel="tag">wiki</a>, <a href="http://www.technorati.com/tags/export" rel="tag">export</a>, <a href="http://www.technorati.com/tags/" rel="tag"></a></span><br /></p>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com3tag:blogger.com,1999:blog-5148702.post-60938652604799135242007-07-04T12:14:00.000+05:302007-07-16T16:47:54.437+05:30Indian Independent music is ALIVE and kicking !!When i first saw sites like <a href="http://www.radioverve.com/">radioverve</a> and <a href="http://www.gigpad.com/">gigpad</a> for indian independent music spring up , I wondered who would be creating this kind of music from india . Well, today as a music lover and self-taught guitarist , i'm more than convinced at the amazing changes and advances happening in the indian independent music scene.<br /><br />Take for instance - my good friend ,Prakash Hariharan has been playing the mandolin for 10 odd years. Sometime in college few years back, he got himself a new acoustic guitar ,and an electric one . And started playing amazing leads on both that led to him drifting towards fusion and little jazz. He and other friends from college like Raghu (Bass,vocals, composition) ,Karthik(vocals,guitar)& Deepak (drums) all from <a href="http://svce.ac.in/">SVCE</a> , have been making demos and jingles and performing at a semi-professional level for some time now .My gf was judged best singer at an inter-college event,and sings for the college band , and i know how she really enjoyed every practice session they had, and admits - its all hard work and patience. She should know - she's been learning classical indian music for the past 15 years ,Prakash for 10 odd years on the mandolin started off classical himself. Some like the pianist junior ,have even made it big in the band called Oxygen. Great to see them win gigs ,be it a fusion at iit,iim or the other events in south india. Hey ,incidently I had a great time myself playing the guitar for while in the western music band. I still do enjoy each minute i spend everyday with my custom made spanish guitar 8 )<br /><br />Whats new though , is that unlike anyone else i know or anytime before ... Prakash has put away a nice job at a software company to pursue his dream . He joined a radio station to learn production , while spinning his own compositions in his home studio . recording and jamming with other buddies . He's been showing his demo's to people ,even to Guitar Prasanna and hopes to one day join the Berkely school of music . Really awesome to see people passionate and pursuing what they love 8 )<br /><br />On the same lines, I was really stunned when i heard the awesome potential in indian inde music 8 ) ( songs from red cube, indus creed especially ) .Lot of indian independent music happening ....<br /><br /><span style="font-weight: bold;">Check out</span><br /><ol><li><a href="http://www.split-magazine.com/downloads">http://www.split-magazine.com/downloads</a> <span style="text-decoration: underline;"></span></li><li><span style="text-decoration: underline;"></span><a href="http://split-magazine.com/radio">http://split-magazine.com/radio</a></li><li><a href="http://radioverve.com/">radioverve</a></li><li><a href="http://www.gigpad.com/">gigPad</a><br /></li></ol>Prakash puts some of his music over at <a href="http://pkharry.blogspot.com/">his blog</a> and runs <a href="http://www.gcast.com/u/pkharry/main">his own podcasts with his music</a> , and I'll ask him to update news on his new band in bangalore .<br /><br />Here's a demo of Red Cube's single called <a href="http://www.split-magazine.com/?dl=Red_Cube_-_Somewhere_In_A_Corner.mp3">"some where in the corner"</a>.<br /><br />Cheers to the music,guitars and the free world ! 8 )<br /><br />Update : Also on similiar lines, is <a href="tempostand.com">tempostand.com</a> . And here's cheers to Oritus, for their awesome song and now my personal fav indian inde ballad - <a href="http://split-magazine.com/?dl=Oritus_-_Many_A_Mile.mp3">'Many a Mile' - by Oriitus</a>.<br />Keep Clicking,<br />Bhasker<br /><br /><p><span class="technoratitag">Technorati Tags: <a href="http://www.technorati.com/tags/indian," rel="tag">indian</a>, <a href="http://www.technorati.com/tags/indie," rel="tag">indie</a>, <a href="http://www.technorati.com/tags/music," rel="tag">music</a>, <a href="http://www.technorati.com/tags/pkharry," rel="tag">pkharry</a>, <a href="http://www.technorati.com/tags/radioverve," rel="tag">radioverve</a>, <a href="http://www.technorati.com/tags/redcube," rel="tag">redcube</a>, <a href="http://www.technorati.com/tags/split," rel="tag">split</a>,<a href="http://www.technorati.com/tags/tempostand" rel="tag">tempostand</a></span>, <a href="http://www.technorati.com/tags/oritus" rel="tag">oritus</a></span>,<a href="http://www.technorati.com/tags/svce" rel="tag">svce</a></span>, <a href="http://www.technorati.com/tags/gigpad" rel="tag">gigpad</a>,<a href="http://www.technorati.com/tags/bosky101" rel="tag">bosky101</a></p>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com1tag:blogger.com,1999:blog-5148702.post-35776198369566264212007-06-27T15:16:00.000+05:302007-06-27T15:41:46.088+05:30Top 5 MUST READ Javascript ResourcesSome MUST READ javascript links that I thought i'd share.<br /><br /><span style="font-weight: bold;"> Excellent Code style tutorial</span> , with easily undertandable code snippets ( Bad Vs Ok examples)<br />=>From Mozilla, <a href="http://wiki.mozilla.org/JavaScript:SpiderMonkey:Coding_Style">http://wiki.mozilla.org/JavaScript:SpiderMonkey:Coding_Style</a><br /><br /><span style="font-weight: bold;">Best example of well documented code</span><br />=> The YUI Javascript library, start off with reading <a href="http://developer.yahoo.com/yui/docs/YAHOO.js.html">http://developer.yahoo.com/yui/docs/YAHOO.js.html</a><br /><br /><span style="font-weight: bold;">Excellent Javascript beginner tutorials</span><br />=> from Javascript Guru- Douglas Crockford's stable<br />===> <a href="http://javascript.crockford.com/survey.html">http://javascript.crockford.com/survey.html</a><br />===> <a href="http://javascript.crockford.com/code.html">http://javascript.crockford.com/code.html</a><br /><br /><span style="font-weight: bold;">Best ever Advanced javascript & Optimization tutorial</span><br />=> from Opera, and probably the most understated article on javascript to date. <a href="http://dev.opera.com/articles/view/efficient-javascript/?page=all">http://dev.opera.com/articles/view/efficient-javascript/?page=all</a><br /><br /><span style="font-weight: bold;">Excellent Advanced javascript tutorials</span><br />=> <a href="http://www.quirksmode.org/js/contents.html">http://www.quirksmode.org/js/contents.html</a><br /><br />Keep Clicking,<br />Bhasker V Kode<br /><p><span class="technoratitag">Technorati Tags: <a href="http://www.technorati.com/tags/javascript" rel="tag">javascript</a>, <a href="http://www.technorati.com/tags/js" rel="tag">js</a>, <a href="http://www.technorati.com/tags/programming" rel="tag">programming</a>, <a href="http://www.technorati.com/tags/tutorials" rel="tag">tutorials</a>, <a href="http://www.technorati.com/tags/bosky101" rel="tag">bosky101</a>, <a href="http://www.technorati.com/tags/kode" rel="tag">kode</a></span></p>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com2tag:blogger.com,1999:blog-5148702.post-12734322535915800582007-05-25T08:58:00.000+05:302007-05-26T20:12:05.646+05:30Introducing toXmlString : Javascript XML DOM to String ConversionI was surprised to find no function to convert a javascript xml dom object to a string. I did find an upcoming feature added in Javascript 1.6 by the cool folks at Mozilla, but it really did not cater to xml dom objects already created /accessable by javascript.<br /><br />I've seen PHP's PEAR ,and XML_Parser classes and often like to take part of the xml to resend/reuse later in my application. So since I could'nt find one , I wrote one 8 ) !<br /><br /><span style="font-size:130%;"><span style="font-weight: bold; color: rgb(153, 0, 0);">toXmlString(xmlObj) : string</span></span><br /><br /><span style="color: rgb(153, 0, 0); font-weight: bold;">/**</span><br /><span style="color: rgb(153, 0, 0); font-weight: bold;"> * </span><span style="color: rgb(153, 0, 0);">@author </span><span style="color: rgb(153, 0, 0); font-weight: bold;">Bhasker V Kode<br /></span><span style="color: rgb(153, 0, 0); font-weight: bold;"> </span><span style="color: rgb(153, 0, 0);">* @name toXmlString<br /></span><span style="color: rgb(153, 0, 0);"></span><span style="color: rgb(153, 0, 0); font-weight: bold;">* </span><span style="color: rgb(153, 0, 0);">@description</span><span style="color: rgb(153, 0, 0); font-weight: bold;"> Functional Style Method to Generate XML String from any xml DOMobject .<br /></span><span style="color: rgb(153, 0, 0); font-weight: bold;"> </span><span style="color: rgb(153, 0, 0);">* @param s (String ) [optional for usage]</span><br /><span style="color: rgb(153, 0, 0); font-weight: bold;"> </span><span style="color: rgb(153, 0, 0);">* @language Javascript</span><br /><span style="color: rgb(153, 0, 0);"> * @date 25th May ,2007</span><br /><span style="color: rgb(153, 0, 0);"> */</span><span style="color: rgb(153, 0, 0); font-weight: bold;font-size:85%;" ><br /></span><ol class="code" style="font-family:courier new;"><span style="font-size:85%;"><br /><br /></span><li><span style="font-size:85%;">function toXmlString(xy,s){</span></li><li><span style="font-size:85%;">var str = (s==undefined)?'' : s;<br /></span></li><li><span style="font-size:85%;"> if(xy.nodeValue==undefined){</span></li><li><span style="font-size:85%;"> //ur a big moma</span></li><li><span style="font-size:85%;"> var multiStr=[],temp='';</span></li><li><span style="font-size:85%;"> for(var i=0;i <></span></li><li><span style="font-size:85%;"> // each repeasted node<br /></span></li><li><span style="font-size:85%;"> if(xy.childNodes[i].nodeName.toString().indexOf('#')<0){</span></li><li><span style="font-size:85%;"> var nodeNameStart ='<'+xy.childNodes[i].nodeName;</span></li><li><span style="font-size:85%;"> var nodeNameEnd ='<!--'+xy.childNodes[i].nodeName+'-->';</span></li><li><span style="font-size:85%;"> var attsStr=' ',atts = xy.childNodes[i].attributes;</span></li><li><span style="font-size:85%;"> if(atts!=undefined){<br /></span></li><li><span style="font-size:85%;"> for(var j=0;j<></span></li><li><span style="font-size:85%;"> attsStr+=atts[j].nodeName+'="'+ atts[j].firstChild.nodeValue+'"';</span></li><li><span style="font-size:85%;"> }</span></li><li><span style="font-size:85%;"> }</span></li><li><span style="font-size:85%;"> temp = nodeNameStart + ((attsStr==' ')?'':attsStr ) +'>'+toXmlString(xy.childNodes[i],str) + nodeNameEnd;</span></li><li><span style="font-size:85%;"> multiStr.push(temp);</span></li><li><span style="font-size:85%;"> str = temp;</span></li><li><span style="font-size:85%;"> }else{</span></li><li><span style="font-size:85%;"> //node Value<br /></span></li><li><span style="font-size:85%;"> str = toXmlString(xy.childNodes[i],str);</span></li><li><span style="font-size:85%;"> multiStr.push(str);</span></li><li><span style="font-size:85%;"> }</span></li><li><span style="font-size:85%;"> }</span></li><li><span style="font-size:85%;"> //end of for loop,time to untangle our results in order of appearance<br /></span></li><li><span style="font-size:85%;"> str = multiStr.join('');</span></li><li><span style="font-size:85%;"> }else{</span></li><li><span style="font-size:85%;"> return xy.nodeValue;</span></li><li><span style="font-size:85%;"> }</span></li><li><span style="font-size:85%;"> return str;</span></li><li><span style="font-size:85%;">}<br /></span></li></ol><span style="font-size:85%;"><br /></span><br /><br /><p><span style="font-size:130%;"><span style="font-weight: bold; color: rgb(102, 0, 0);">Usage</span></span><br /></p><p>var str = toXmlString(xmlDomObj) ;</p><span style="font-size:130%;"><span style="font-weight: bold; color: rgb(153, 0, 0);">Demo <a href="http://bhaskervk.com/libraries/reusable/demos/xml.php"><span style="font-size:100%;">- http://bhaskervk.com/libraries/reusable/demos/xml.php</span></a></span></span><br /><br /><iframe src="http://bhaskervk.com/libraries/reusable/demos/xml.php" style="border: 0px none ;" height="300" width="100%"></iframe><br /><br /><p>You might find the functional style of programming familiar from my earlier posts ,where I created a <a href="http://bosky101.blogspot.com/2007/01/live-blogging-javascript-hackers-first.html">XML writer class</a> where I created an xml string from scratch . So it was only a matter of time before i approached the situation where I might need to create xml from existing objects.<br /></p><br /><p><span class="technoratitag">Technorati Tags: <a href="http://www.technorati.com/tags/kode" rel="tag">kode</a>, <a href="http://www.technorati.com/tags/,functional" rel="tag">,functional</a>, <a href="http://www.technorati.com/tags/," rel="tag">,</a>, <a href="http://www.technorati.com/tags/programming" rel="tag">programming</a>, <a href="http://www.technorati.com/tags/," rel="tag">,</a>, <a href="http://www.technorati.com/tags/helper" rel="tag">helper</a>, <a href="http://www.technorati.com/tags/,class" rel="tag">,class</a>, <a href="http://www.technorati.com/tags/," rel="tag">,</a>, <a href="http://www.technorati.com/tags/toXmlString" rel="tag">toXmlString</a>, <a href="http://www.technorati.com/tags/," rel="tag">,</a>, <a href="http://www.technorati.com/tags/bhasker," rel="tag">bhasker,</a>, <a href="http://www.technorati.com/tags/xml" rel="tag">xml</a></span></p>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com1tag:blogger.com,1999:blog-5148702.post-65796596673795494262007-05-17T06:39:00.000+05:302007-05-21T19:48:17.747+05:30Introducing : The Returnable Project<span><returnable href="http://onhover.returnable.org/tooltip.text/Introducing Returnable">Whats your return type...?</returnable></span><br />Hi,<br /><br /><div>I just wanted to share with everyone a new project that i'm launching today .Returnable Project is architecture for using the url as a bridge for chaining 3 traits of the web : content ,their behaviour and its delivery its a personal project but quite a bit of javascript ,php ,url rewrite ,regex and css hacking spread over a few months of research and prototypes . It comes from a few motives:<br /><ul><li> tooltips not being able to support html</li><li>existing tooltip implementations catching every mousemove event (while this uses the concept of idempotent events - knowing when to not accept events) </li><li>no simple API for synchronising the delivery of content with its behaviour and content. In other words - allowing the normal user to create intuitive widgets and consume API's easily inside blogs and web pages.</li></ul><br />The alpha is live over at <a href="http://returnable.org/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"> returnable.org </a>,while the project will be otherwise hosted at <a href="http://sourceforge.net/projects/returnable/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://sourceforge.net/projects<wbr>/returnable/</a> .</div> <div> </div> <div>This may appeal to web developers and bloggers . It's a framework to add simple event driven programming for those who dont want to type code. But powerful all the same because of the DSL and API.</div> <div> </div> <div> </div> <div>For bloggers who are looking for an easy way to have tooltips (in javascript enabled blogs) ,this could be a great utility. You can go through the site to see demos on how to <span><returnable href="http://onhover.returnable.org/tooltip.text/with html as well !">create intuitive tooltips </returnable></span>(and more apps coming soon) with just one line of code (apart from the script node to be added initially )<br /><br /><span style="font-weight: bold;">Here's how to add Returnable elements into your blog:<br /></span><ol><li><span style="font-weight: bold;">Step1 : Add the script element<br /></span><script type="'text/javascript'" src="%27http://returnable.org/returnable-core.js%27"></script><br />This preferably need to be done only once (at the template of the blog/site /header,etc )<br /><br /></li><li><span style="font-weight: bold;">Step 2 : Add the Returnable elements<br /></span><span><returnable href="http://onhover.returnable.org/tooltip.text/hello">Hover over this for some widgety magic</returnable></span><br /><br /></li><li><span style="font-weight: bold;">Step 3 : Done !<br /></span>Thats all there is ,load up you blog/ page .<span style="font-weight: bold;"><br /></span></li></ol><span style="font-weight: bold;"><br /></span> </div> <div> </div> <div>I finally have the working prototypes ,and the project website website on sourceforge,as well as the official website (<a href="http://returnable.org/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">returnable.org</a>) running since then. I plan to add support for storage of tooltips on the server , new returnable types like widgets, maps , and so on which will be much easier now that the main architecture is working across browsers 8 ) <script><!-- D(["mb","\u003cbr\>\n\u003cbr\>Keep Clicking,\u003c/div\>\u003cspan\>\n\u003cdiv\> \u003c/div\>\n\u003cdiv\>Bhasker V Kode\u003c/div\>\n\u003cdiv\>Lead Architect, The Returnable Project\u003c/div\>\n\u003cdiv\>\u003ca href\u003d\"mailto:kode@returnable.org\" target\u003d\"_blank\" onclick\u003d\"return top.js.OpenExtLink(window,event,this)\"\>kode at returnable.org\u003c/a\>\u003c/div\>\u003c/span\>\u003cbr\>\n",0] ); D(["ce"]); //--></script><br /><br />Keep Clicking,</div><span> <div> </div><span><returnable href="http://onhover.returnable.org/tooltip.text/Lead Architect,<BR>kode@returnable.org">Bhasker V Kode</returnable></span><div></div></span><br /><p><br /><span class="technoratitag">Technorati Tags: <a href="http://www.technorati.com/tags/returnable" rel="tag">returnable</a>, <a href="http://www.technorati.com/tags/opensource" rel="tag">opensource</a>, <a href="http://www.technorati.com/tags/javascript" rel="tag">javascript</a>, <a href="http://www.technorati.com/tags/tooltip" rel="tag">tooltip</a>, <a href="http://www.technorati.com/tags/returntype" rel="tag">returntype</a>, <a href="http://www.technorati.com/tags/india" rel="tag">india</a>, <a href="http://www.technorati.com/tags/widgets" rel="tag">widgets</a>, <a href="http://www.technorati.com/tags/bloggers" rel="tag">bloggers</a></span><br /></p>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com4tag:blogger.com,1999:blog-5148702.post-77973523228869982342007-04-12T13:36:00.000+05:302007-04-12T13:58:53.291+05:30IE JS hack :Catching the Maximise / Minimise eventHere's a little hack to find out whether the user has maximised or minimised the window .This can then be used to trigger other useful chain of events of your choice .<br /><br /><p><b>Explanation:</b><br />The screenX, and screenY properties of the event corresponds to the the x and y coordinates of the mouse pointer's position relative to the user's screen respectively .<br /></p><p>Now comes the juicy part ....</p><p>IE forces a mouse move whenever you change the focus of the window .So the interesting point to note is that - a mousemove event is forced even though the mouse co-ordinates dont actaully move ! So if you are able to track the previous mouse co-ords and catch the point where a mouse move is called - but at the same time the values dont change - bingo ! 8 )</p><br /><br /><div style="background-color: rgb(236, 233, 216); padding-left: 10px;font-family:courier;font-size:8px;color:black;"><br />var logs ,x=-1, y=-1 ,ctr = 2;<br /><span style="font-weight: bold;">document.onmousemove = catchmaxmin;</span><br /><br /><span style="font-weight: bold;">function catchmaxmin(ev){</span><br />logs = document.getElementById('logs');<br />var e = (ev!=undefined)?ev:event;<br /><span style="color: rgb(204, 0, 0); font-weight: bold;"> if(e["screenX"]==x && e["screenY"]==y && ctr%2==0 ){</span><br /> logs.innerHTML+= '<br />maximized /minimized ! ';<br /><span style="color: rgb(153, 0, 0); font-weight: bold;"> }</span><br /> ctr++;<br /> x = e["screenX"];<br /> y = e["screenY"];<br /> <span style="font-weight: bold;">}</span><br /></div><br /><br />I've been looking for a similiar hack in firefox ,but i guess this useful bug has'nt been introduced into the Mozilla camp . 8 ) <a href="http://www.bhaskervk.com/js/demos/ie7maxmincatch.html">Here's a working demo</a> ( tested on ie6 , ie7 ) of the 10 odd lines of code needed .<br /><br /><span style="font-weight: bold;">Keep Clicking,</span><br />Bhasker V Kode<br /><p><span class="technoratitag">Technorati Tags: <a href="http://www.technorati.com/tags/javascript" rel="tag">javascript</a>, <a href="http://www.technorati.com/tags/event" rel="tag">event</a>, <a href="http://www.technorati.com/tags/maxmin" rel="tag">maxmin</a>, <a href="http://www.technorati.com/tags/ie" rel="tag">ie</a>, <a href="http://www.technorati.com/tags/window" rel="tag">window</a>, <a href="http://www.technorati.com/tags/bosky101" rel="tag">bosky101</a>, <a href="http://www.technorati.com/tags/bhasker" rel="tag">bhasker</a>, <a href="http://www.technorati.com/tags/kode" rel="tag">kode</a>, <a href="http://www.technorati.com/tags/hack" rel="tag">hack</a></span></p>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com2tag:blogger.com,1999:blog-5148702.post-28555035698867116452007-03-24T13:33:00.000+05:302007-03-24T13:39:11.218+05:30CS / IT MUST READ : "Google summer of code"The "<span style="font-weight: bold;">Google summer of code</span>" deadline is approaching, and basically is an attempt to inspire projects from students across the world ,by organisations(> 130) suggesting project ideas which they will then mentor.<br /><br />This is perfect for doing your final year project . Guys who are into coding, dont miss out on this chance - get a group of like minded friends and register , read through the norms,and the whole process of applying, and working on open source projects is an experience in itself . Last year, Google funded over 600 students in 93 countries to work with 100 open source groups.<br /><br /><br /><span style="font-weight: bold;">About the Google SOC 2007</span><br />The accepted Google SOC 2007 mentors list is now complete at the Summer of Code website — 131 projects could use your help. Student applications are open and the end date is March 26. Google has an application guide in the Summer of Code Announce discussion group that provides more information on the application process.<br /><br /><br /><span style="font-weight: bold;">Advice for students applying:</span><br /><a href="http://code.google.com/p/google-summer-of-code/wiki/AdviceforStudents">http://code.google.com/p/google-summer-of-code/wiki/AdviceforStudents</a><br /><br /><span style="font-weight: bold;">Application guide :</span><br /><a href="http://groups.google.com/group/google-summer-of-code-announce/web/guide-to-the-gsoc-web-app-for-student-applicants">http://groups.google.com/group/google-summer-of-code-announce/web/guide-to-the-gsoc-web-app-for-student-applicants</a><br /><br /><span style="font-weight: bold;">Home page:</span><br /><a href="http://code.google.com/soc">http://code.google.com/soc</a><br /><br /><br /><span style="font-weight: bold;">Who's eligible to participate as a student in Google Summer of Code?</span><br />in order to participate in the program, you must be a student. (colleges, universities, masters programs, PhD programs ). You should be prepared, upon request, to provide Google with transcripts from your accredited institution as proof of enrollment or admission status. Computer Science does not need to be your field of study in order to participate in the program.<br /><br />If you however miss the dates,its still an experience to spend the summer hols doing a project in your area of interest ,and build up for your final project.<br /><br /><span style="font-weight: bold;">Keep Clicking,</span><br />Bhasker V Kode<br /><span style="color: rgb(102, 102, 102);font-size:85%;" >(FYI : <a href="http://svce.ac.in">SVCE</a> 2002-2006 IT Dept )</span><br /><br /><p><br /><span class="technoratitag">Technorati Tags: <a href="http://www.technorati.com/tags/svce" rel="tag">svce</a>, <a href="http://www.technorati.com/tags/it" rel="tag">it</a>, <a href="http://www.technorati.com/tags/cs" rel="tag">cs</a>, <a href="http://www.technorati.com/tags/finalyear" rel="tag">finalyear</a>, <a href="http://www.technorati.com/tags/project" rel="tag">project</a>, <a href="http://www.technorati.com/tags/btech" rel="tag">btech</a>, <a href="http://www.technorati.com/tags/india" rel="tag">india</a>, <a href="http://www.technorati.com/tags/google" rel="tag">google</a>, <a href="http://www.technorati.com/tags/soc" rel="tag">soc</a>, <a href="http://www.technorati.com/tags/bosky101" rel="tag">bosky101</a>, <a href="http://www.technorati.com/tags/kode" rel="tag">kode</a></span><br /></p>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com0tag:blogger.com,1999:blog-5148702.post-88312774635847628232007-02-22T23:09:00.000+05:302007-02-23T01:39:48.126+05:30Introducing tvHtmlHelper and TagCreatorI just saw this helper class called <a href="http://ajaxian.com/archives/pquery-php-and-jquery">pQuery on ajaxian </a>today .written by vikas from delhi ,that offers a very modest way of generating your html code with the necessary attributes for the html elements ,etc .<br /><br />The good news is that its nice to see someone featured on ajaxian . (both vikas and myself are 23 btw...cheers to that ! ). The bad news ,i knew he could do better .<br /><br />The API needed a little bit more extensibility and scalability . And thats how i got on a hacking marathon to show how to integrate this class ive made to make ...say a tag creator .Here is vika's code usage :<br /><br /><div class="syntax_hilite"><span style="color: rgb(0, 0, 0); font-weight: bold;">PHP implementation of pQuery:</span><br /><div id="php-1"> <div class="php"><br /><ol><li style="font-weight: bold; color: rgb(38, 83, 106);"> <div style="color: rgb(0, 0, 0); font-weight: normal;font-family:'Courier New',Courier,monospace;"><span style="color: rgb(0, 0, 0); font-weight: bold;">=<span style="color: rgb(0, 0, 255);">$pquery</span>-><span style="color: rgb(0, 102, 0);">form_remote_tag</span><span style="color: rgb(0, 102, 0); font-weight: bold;">(</span><a href="http://www.php.net/array"><span style="color: rgb(0, 0, 102);">array</span></a><span style="color: rgb(0, 102, 0); font-weight: bold;">(</span><span style="color: rgb(255, 0, 0);">'url'</span>=><span style="color: rgb(255, 0, 0);">'index.php?task=ajax'</span>,<span style="color: rgb(255, 0, 0);">'update'</span>=><span style="color: rgb(255, 0, 0);">'#idtoupdate'</span><span style="color: rgb(0, 102, 0); font-weight: bold;">)</span><span style="color: rgb(0, 102, 0); font-weight: bold;">)</span>;?></span></div> </li><li style="font-family: 'Courier New',Courier,monospace; font-weight: normal; font-style: normal; color: rgb(58, 106, 139);"> <div style="color: rgb(0, 0, 0); font-family: 'Courier New',Courier,monospace; font-weight: normal;">Field : <input ype="text" name="<font" style="color: rgb(255, 0, 0);">"field" </div></li><li style="font-family: 'Courier New',Courier,monospace; font-weight: normal; font-style: normal; color: rgb(58, 106, 139);"><div style="color: rgb(0, 0, 0); font-family: 'Courier New',Courier,monospace; font-weight: normal;">< type = "submit"><div style="color: rgb(0, 0, 0); font-family: 'Courier New',Courier,monospace; font-weight: normal;"> </div><br /></div></li></ol>My first comments ? <span style="font-weight: bold;">Very shabby !</span><br /><br />Here my custom built html helper , i write - that would not only go with jQuery ,but heck i use it for spitting out everything from body tags with onload 's , to hr tags , and tables -tr's running in reccursive loops .<br /><br /><div class="syntax_hilite"><span style="color: rgb(0, 0, 0); font-weight: bold;"><span style="color: rgb(153, 0, 0);">Demo of tvhtmlHelper.php</span>:</span><br /></div></div></div></div><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(255, 128, 0);"></span></span></code><br /><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(255, 128, 0);">/**<br /> * @description - A simple Tag creator written in php that uses tvHTMLHelper<br /> * @author Bhasker V Kode<br /> * @date Feb23,2007<br /> * @copyright Some Rights Reserved<br />*/</span></span></code><br /><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);">class </span><span style="color: rgb(0, 0, 187);">TagCreator </span><span style="color: rgb(0, 119, 0);">extends </span><span style="color: rgb(0, 0, 187);">tvHTMLHelper</span><span style="color: rgb(0, 119, 0);">{<br /> public function </span><span style="color: rgb(0, 0, 187);">addTag</span><span style="color: rgb(0, 119, 0);">(</span><span style="color: rgb(0, 0, 187);">$type</span><span style="color: rgb(0, 119, 0);">=</span><span style="color: rgb(0, 0, 187);">NULL </span><span style="color: rgb(0, 119, 0);">, </span><span style="color: rgb(0, 0, 187);">$tag</span><span style="color: rgb(0, 119, 0);">=</span><span style="color: rgb(0, 0, 187);">NULL</span><span style="color: rgb(0, 119, 0);">){<br /> switch(</span><span style="color: rgb(0, 0, 187);">$type</span><span style="color: rgb(0, 119, 0);">){<br /> case </span><span style="color: rgb(221, 0, 0);">'technorati'</span><span style="color: rgb(0, 119, 0);">:<br /> </span><span style="color: rgb(255, 128, 0);">/*OUTPUT :will output the html for a tag .<br /> </span><span style="color: rgb(0, 119, 0);">return </span><span style="color: rgb(0, 0, 187);">$this</span><span style="color: rgb(0, 119, 0);">-></span><span style="color: rgb(0, 0, 187);">insert</span><span style="color: rgb(0, 119, 0);">(</span><span style="color: rgb(221, 0, 0);">'a'</span><span style="color: rgb(0, 119, 0);">,</span><span style="color: rgb(221, 0, 0);">'start'</span><span style="color: rgb(0, 119, 0);">,array(</span><span style="color: rgb(221, 0, 0);">"href"</span><span style="color: rgb(0, 119, 0);">=> </span><span style="color: rgb(221, 0, 0);">"http://www.technorati.com/tags/$tag" </span><span style="color: rgb(0, 119, 0);">,</span><span style="color: rgb(221, 0, 0);">"rel"</span><span style="color: rgb(0, 119, 0);">=></span><span style="color: rgb(221, 0, 0);">"tag"</span><span style="color: rgb(0, 119, 0);">)) . </span><span style="color: rgb(0, 0, 187);">$tag </span><span style="color: rgb(0, 119, 0);">. </span><span style="color: rgb(0, 0, 187);">$this</span><span style="color: rgb(0, 119, 0);">-></span><span style="color: rgb(0, 0, 187);">insert</span><span style="color: rgb(0, 119, 0);">(</span><span style="color: rgb(221, 0, 0);">'a'</span><span style="color: rgb(0, 119, 0);">,</span><span style="color: rgb(221, 0, 0);">'end'</span><span style="color: rgb(0, 119, 0);">) ;<br /> break;<br /> </span><span style="color: rgb(255, 128, 0);">/*<br /> case 'youtubeVideoLink':<br /> // follow similiar style to embed a youtube video , or so on for other widgets of your choice .<br /> */<br /> </span><span style="color: rgb(0, 119, 0);">}<br /> }</span></span></code><code><span style="color:#000000;"><br /><br /></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 187);">$myInstant </span><span style="color: rgb(0, 119, 0);">= new </span><span style="color: rgb(0, 0, 187);">TagCreator</span><span style="color: rgb(0, 119, 0);">;<br /></span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);">echo </span><span style="color: rgb(0, 0, 187);">$myInstant</span><span style="color: rgb(0, 119, 0);">-></span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 187);">addTag</span></span></code><code></code><code><span style="color:#000000;">('html','start');</span> </code><br /><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);">echo </span><span style="color: rgb(0, 0, 187);">$myInstant</span><span style="color: rgb(0, 119, 0);">-></span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 187);">addTag</span></span></code><code></code><code><span style="color:#000000;">('body','start',array("onload"=>"init();" , "class"="bC");</span> </code><br /><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);"></span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);">echo </span><span style="color: rgb(0, 0, 187);">$myInstant</span><span style="color: rgb(0, 119, 0);">-></span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 187);">addTag</span></span></code><code></code><code><span style="color:#000000;">('technorati','tvhtmlhelper');</span> </code><br /><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);">echo </span><span style="color: rgb(0, 0, 187);">$myInstant</span><span style="color: rgb(0, 119, 0);">-></span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 187);">addTag</span></span></code><code></code><code><span style="color:#000000;">('technorati','bosky101');</span> </code><br /><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);">echo </span><span style="color: rgb(0, 0, 187);">$myInstant</span><span style="color: rgb(0, 119, 0);">-></span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 187);">addTag</span></span></code><code></code><code><span style="color:#000000;">('technorati','php');<br /></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);">echo </span><span style="color: rgb(0, 0, 187);">$myInstant</span><span style="color: rgb(0, 119, 0);">-></span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 187);">addTag</span></span></code><code></code><code><span style="color:#000000;">('body','end');</span> </code><br /><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);">echo </span><span style="color: rgb(0, 0, 187);">$myInstant</span><span style="color: rgb(0, 119, 0);">-></span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 187);">addTag</span></span></code><code></code><code><span style="color:#000000;">('html','end');</span> </code><br /><code></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(255, 128, 0);"> </span><span style="color: rgb(0, 119, 0);"></span></span></code><br /><span style="font-weight: bold;"><span style="color: rgb(204, 0, 0);">Notice the following design differences pQuery and tvHTMLHelper:<br /></span></span><ol><li><span style="font-weight: bold;">Inheritance is good for you !</span><br />Primary usage pattern would be to extend this class where you deal with html a lot.</li><li><span style="font-weight: bold;">To echo or not to echo !</span><br />If youve noticed ,in pQuery it prints instead of returning . Mine does not echo on its own .but <span style="font-style: italic;">return the html string instead</span><span style="font-weight: bold; font-style: italic;"> </span>! .This can be used when you need to generate html to be used later ,like writing concatenating to a string /or sending mail /etc . Being generic never does any harm in helper classes. This i feel is a big pitfall in pQuery .<br /></li><li><span style="font-weight: bold;">Clear cut definition boundaries of beginning and ending .</span><br />The API has a startEnd for obvious reasons. This might be a major fallout in pQuery . If you do attempt to seperate presentation from logic , then why make it half way ? do it well or its better off not to do it at all .<br /></li><li><span style="font-weight: bold;">Scalability. </span><br />Now tvHtmlHelper does not limit you to jQuery but basically every web page . Heck ,i even use it for a custom build stringToXML class ive written where i could use the API in loops like this :</li><ul><li><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 187);">$myInstant</span><span style="color: rgb(0, 119, 0);">-></span><span style="color: rgb(0, 0, 187);">insert</span><span style="color: rgb(0, 119, 0);">(</span><span style="color: rgb(221, 0, 0);">'channels'</span><span style="color: rgb(0, 119, 0);">,</span><span style="color: rgb(221, 0, 0);">'start',</span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);"></span><span style="color: rgb(0, 0, 187);">array</span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);">(</span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(221, 0, 0);">"length"=></span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);"></span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(221, 0, 0);">1</span><span style="color: rgb(0, 119, 0);"></span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(221, 0, 0);">,"foo"=>"bar"</span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);">)</span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);"> )</span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);">;</span></span></code></li><li><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);"><span style="color: rgb(51, 51, 51);">OR links</span></span></span></li><li><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 187);">$myInstant</span><span style="color: rgb(0, 119, 0);">-></span><span style="color: rgb(0, 0, 187);">insert</span><span style="color: rgb(0, 119, 0);">(</span><span style="color: rgb(221, 0, 0);">'a'</span><span style="color: rgb(0, 119, 0);">,</span><span style="color: rgb(221, 0, 0);">'start',</span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);"></span><span style="color: rgb(0, 0, 187);">array</span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);">(</span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(221, 0, 0);">"href"=>$link1</span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(221, 0, 0);"></span><span style="color: rgb(0, 119, 0);"></span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(221, 0, 0);">,"id"=>"foo","class"=>"fadeClass"</span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);">)</span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);"> )</span></span></code><code><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 119, 0);">;</span></span></code></li></ul><li><span style="font-weight: bold;">Useful across file types : xml ,html , tagging ,and link generation !</span><br /><span style="font-weight: bold;"></span>You could even extend tvHtmlHelper to replace the < > symbols with custom ones or words .like ,what ever you pass through the API will come out as a technorati tag !<br /></li></ol>Ive put a <a style="font-weight: bold;" href="http://www.bhaskervk.com/code/php/tvhtmlhelper4.php">demo page</a> ,which you can check out . Ive ported tvHTMLHelper to both php4 as well as php5 . Have a look at the <a href="http://www.bhaskervk.com/code/php/tvhtmlhelper.rar">sourcecode ( rar file)</a> !<br /><br />I'd love to get any feedback on this ,or places where you might be able to use this .<br /><br /><span style="font-weight: bold;">Keep Clicking,</span><br />Bhasker V Kode<br /><br><br /><p><br /><span class="technoratitag">Technorati Tags: <a href="http://www.technorati.com/tags/php" rel="tag">php</a>, <a href="http://www.technorati.com/tags/pQuery" rel="tag">pQuery</a>, <a href="http://www.technorati.com/tags/ajaxian" rel="tag">ajaxian</a>, <a href="http://www.technorati.com/tags/tvHTMLHelper" rel="tag">tvHTMLHelper</a>, <a href="http://www.technorati.com/tags/bhaskervk" rel="tag">bhaskervk</a>, <a href="http://www.technorati.com/tags/bosky101" rel="tag">bosky101</a>, <a href="http://www.technorati.com/tags/code" rel="tag">code</a>, <a href="http://www.technorati.com/tags/tags" rel="tag">tags</a>, <a href="http://www.technorati.com/tags/technorati" rel="tag">technorati</a>, <a href="http://www.technorati.com/tags/youtube" rel="tag">youtube</a>, <a href="http://www.technorati.com/tags/code" rel="tag">code</a></span></p>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com1tag:blogger.com,1999:blog-5148702.post-14903451440064197212007-02-15T09:25:00.000+05:302007-02-21T13:40:01.330+05:30Adding Idempotent Event Handling to your Javascript ToolkitIdempotent transactions are ones which may be repeated without affecting anything. You may have heard of this term when it comes to online banking ,where idempotent transactions are required ,and basically care needs to be taken to rollback , and not accidently charge twice for the same purchase .<br /><br />So im trying to extend this to a javascript scenario ,where clicking on a button twice in quick succession will be ignored . <span style="font-weight: bold;">This may well be used in a registration / payment / complex timed ui / or any other critical operation </span>. Or basically to add a bit of fun to anything event driven !<br /><!-- <iframe src="http://bhaskervk.com//libraries/reusableJS/examples/deferredEvent.html" border="0" width="100%"></iframe> --><br /><h3>Explanation</h3><!-- start code-->Let us assume that you dynamically add an event to an object . Now with Reusable.DeferredEvent , it throws a similiar api , gives you an option to specify your existing addEvent code -.Popular version of which are :<br /><ul><li><a href="http://www.quirksmode.org/blog/archives/2005/10/_and_the_winner_1.html"><span style="text-decoration: underline;"></span>quirksmode 's</a> John Resig /Scott Andrew version of addEvent<br /></li><li> the <a href="http://www.dustindiaz.com/yahoo-event-utility/">Yahoo.Event</a> </li><li> script.aculo.us /Prototype's <a href="http://roberthanson.blogspot.com/2005/12/prototypejs-event.html">Event.observe</a> .</li></ul>So basically what i have is a plug'n play support for handling idempotent events , using your existing javascript toolkits corresponding dynamic event handling capabilities . In the demo page , I have shown how to integrate with these frameworks by uncommenting the suitable line of code as needed.<br /><br />Which means for configure <b>listenEvent event </b> for every <b>listenTill seconds</b> , for any <b>listenObj </b> object .<br /><br /><br /><span>In the demos , you will find two scenarios :<br /></span><div id="txt1"><ul><li>Only unique button click's on Button1 in the range of <b>1 seconds</b> will be recognised ! </li><li>Only unique mouseouts on Button2 in the range of <b>3 second</b> will be be recognised.</li></ul><br /><br /><p style="padding-left: 15px; background-color: rgb(204, 204, 204); color: rgb(102, 0, 51); font-family: 'Courier New',Courier,monospace; font-size: 12px;"><br /><br />//@param name of instance<br /><i>//instantName = new Reusable.IdempotentEvent(instantName);<br /></i><b><span style="color: rgb(0, 0, 0); font-weight: bold;">// Step 1 : Instantiation</span></b><br /><b>responsive = new Reusable.IdempotentEvent('responsive');</b><br /><br /><br />//@param listenObj - DOM listenTillelement or element id<br />//@param listenEvent string - Event name (as per your toolkit nomenclature )<br />//@param listenTill int / string - how frequency to accept event triggers<br />//@param callBack string - What function to callback eventually<br /><br /><i></i><b><span style="color: rgb(0, 0, 0); font-weight: bold;">// Step 2 : </span></b><b><span style="color: rgb(0, 0, 0);">Exeuction<br /></span></b>//<i>responsive.register( listenObj , listenEvent , listenTill , callBack );</i><br /><b>responsive.register( btn1, 'click' , btn1.getAttribute('onclickwhen'), 'clicked' ); </b><br /><b>responsive.register( btn1, 'mouseout' , 1000, 'hovered' ); </b><br /><br /><br /><br /><br /></p><br /><br /></div><span style="font-weight: bold;"><a href="http://bhaskervk.com/libraries/reusableJS/examples/idempotentEvent.html">Demo and Code here .</a></span><br /><span style="font-weight: bold;"><br /></span><br /><p><span class="technoratitag">Technorati Tags: <a href="http://www.technorati.com/tags/javascript" rel="tag">javascript</a>, <a href="http://www.technorati.com/tags/events" rel="tag">events</a>, <a href="http://www.technorati.com/tags/idempotent" rel="tag">idempotent</a>, <a href="http://www.technorati.com/tags/code" rel="tag">code</a>, <a href="http://www.technorati.com/tags/bhasker" rel="tag">bhasker</a>, <a href="http://www.technorati.com/tags/kode" rel="tag">kode</a>, <a href="http://www.technorati.com/tags/bosky101" rel="tag">bosky101</a>, <a href="http://www.technorati.com/tags/" rel="tag"></a></span></p>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com0tag:blogger.com,1999:blog-5148702.post-1170050138298063702007-01-29T11:00:00.000+05:302007-02-02T10:09:58.946+05:30A Profile of TechEnclave<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.techenclave.com"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 391px; height: 48px;" src="http://www.techenclave.com/forums/images/bo20/silverhead.jpg" alt="" border="0" /></a><br />So, I've also always wondered if the portal a handful of '20-something year old' geeks and myself have built over the years totally in our spare time - would figure as being part of the Indian web innovation revolution .<br /><br />It's called TechEnclave , famed for its forums ... ( <a href="http://www.techenclave.com/forums" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://www.techenclave.com<wbr>/forums</a> ) Being a moderator for the forum , we're all excited that the member base that Team TechEnclave have been really building the community from 2002-03 onwards with experience gained from a temporary hosted forums ,to other experiements through '04, - 05 and finally fixed on the TechEnclave brand ,and have stuck to it ever since the end of 2005 .<br /><br />The reason why i 'm talking about it now - is also to highlight the transition we've seen with the web 2.0 revolution hitting the indian plains . Sure , we did implement ajax based forum search options before it became cool , and we do have some forum regulars like a calendar that the 10k displaying birthdays ,user meets ,and so on . We've even had our TE user meets where we get to interact with the members dating to early 2005 . And with over 25- 30 of them across the country over the years - its not really tough to see why the unconferencing theme dint take too long to pick up in India. Today TechEnclave has over 25 forum sections covering hardware overclocking to gaming , portable devices and Tech News from across the world .If TechEnclave as become what it is today , it has been off the strength ,quality and relevence of its Forums - be it for the tech noobie , geek gurus or the persistent troubleshooter . <script><!-- D(["mb"," <font><font><font><font>Some other statistics </span></span>TechEnclave as of Nov 3 , 2006<br />\n</span></span><font>Members: 11,289<br />\n\t\tThreads: 23,267<br />\n\t\tPosts: 252,379<br />\n</span>Most users ever online was 1,363, 28 Nov 05 2005 at 01:18 PM.<br />\n\n<br />So ...coming back to how TechEnclave fits in as a interesting collage of user-feedback insprired product innovation built inhouse...<br /> <br /><font><font>1 ) TE Spy\n<br /></span></span>an inhouse clone of digg spy ,developed in ajaxian ishtyle , and shows in real time when new posts made at techenclave ... currently for premium members only . But the amount of content we throughout the day ensure that the TE spy functions like a charm . If you are registering at TechEnclave , we'll be happy to upgrade you to a premium membership .Just let me know your user id ,and then you can check out TE Spy for yourself . \n<font><font><br /></span></span><br /><font>2 ) TechEnclave / FunEnclave Addons<br /></span>The TechEnclave ToolBar , A nifty little addon for Firefox helps our users search and naviagate across the site better . We also have an exclusive download manager built and located at \n<a>http://www.techenclave.com<wbr>/forums/techenclave-download<wbr>-manager-get-it-now-5339.html</a> , our recently added hardware benchmarking software located at \n<a>http://www.techenclave.com<wbr>/forums/superprime/</a> as well as numerous other nifty utilities like bookmarklets , feed aggregator widgets and so on .<br /><br /><font>\n</span><font>",1] ); //--></script><br /><hr /><span style="font-weight: bold;"><span style="font-weight: bold;"><span style="font-weight: bold;"><span style="font-weight: bold;">Some other statistics </span></span>TechEnclave as of Nov 3 , 2006<br /></span></span><font>Members: 13,500 +<br />Threads: 27,229<br />Posts: 292,544,<br /><font>Most users ever online was 1,363, 28 Nov 05 2005 at 01:18 PM.<br /><br />So ...coming back to <span style="font-weight: bold;">how TechEnclave fits in as a interesting collage of user-feedback inspired product innovation built inhouse...</span><br /><br /><span style="font-weight: bold;"><span style="font-weight: bold;">1 ) TE Spy<br /></span></span>an inhouse clone of digg spy ,developed in ajaxian ishtyle , and shows in real time when new posts made at techenclave ... currently for premium members only . But the amount of content we throughout the day ensure that the TE spy functions like a charm . If you are registering at TechEnclave , we'll be happy to upgrade you to a premium membership .Just let me know your user id ,and then you can check out TE Spy for yourself .<br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/x/blogger/5004/157/1600/903473/te-spy.jpg"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://photos1.blogger.com/x/blogger/5004/157/320/432459/te-spy.jpg" alt="" border="0" /></a><br /><br /><br /><br /><br /><br /><br /><br /><font><font><br /><span style="font-weight: bold;">2 ) TechEnclave Addons & Initiatives<br /></span>The <a href="http://www.techenclave.com/toolbar/">TechEnclave ToolBar</a> , A nifty little addon for Firefox helps our users search and naviagate across the site better . We also have an <a href="http://www.techenclave.com/forums/techenclave-download-manager-get-it-now-5339.html">exclusive download manager</a> apart from the recently added hardware benchmarking software located at <a href="http://www.techenclave.com/forums/superprime/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://www.techenclave.com<wbr>/forums/superprime/</a> as well as numerous other nifty utilities like bookmarklets , feed aggregator widgets ,newletters , <a href="http://www.techenclave.com/forums/rss.php">rss feeds</a> , and so on .<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/x/blogger/5004/157/1600/825675/te-bar.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 408px; height: 47px;" src="http://photos1.blogger.com/x/blogger/5004/157/320/151622/te-bar.jpg" alt="" border="0" /></a><font><font><br /><span style="font-weight: bold;"> </span><span style="font-weight: bold;"><script><!-- D(["mb","<font>3</span> )</span> <font>TE Rig Gallery </span><br />TERig was an idea that we at techenclave had for a long time. We wanted to give , the tech enthusiast\na medium to showcase your rig to the world. From our feedback on the forums ,we understood that the true potential of your rig can only be shown when your rig details\nare presented in a well formatted manner and with the all important pictures of your rig. \nSo our admins Safin and QuickFire , went about hacking just that . Not only will you be able to put\nyour rig specs in a well formatted manner, but also will be able to\nview where your rig stands vis-a-vis other's. Till date ,we are the first forum to have such a versatile system ...check it out at <a>http://www.techenclave.com<wbr>/forums/RigGallery.html\n</a><br />transcending the role of a forum .<br /><font><br /><font>4</span> ) TE Price Guide<br /></span>Based on feedback over the years ,we even felt the need for a comprehensive and updated price guide for hardware ,whatever be the city you are in india. So welcome another custom built app . the TE Price Guide located at \n<font></span><a>http://www.techenclave.com<wbr>/forums/hardware-prices.html</a> which has now attained a sort of lengendary status of sorts over at the "Build Your Own Rig" followers in India . We even have a seperate \n<font><font><font><font>Market Section </span></span></span></span>where users can swap their new and old stuff .This initiative has gathered a lot of traction for genuine buyers and sellers especially ,for reaching users in the the non metros . \n",1] ); //--></script><span style="font-weight: bold;">3</span> )</span> <span style="font-weight: bold;">TE Rig Gallery </span><br />TERig was an idea that we at techenclave had for a long time. We wanted to give , the tech enthusiast a medium to showcase your rig to the world. From our feedback on the forums ,we understood that the true potential of your rig can only be shown when your rig details are presented in a well formatted manner and with the all important pictures of your rig. So our admins Safin and QuickFire , went about hacking just that . Not only will you be able to put your rig specs in a well formatted manner, but also will be able to view where your rig stands vis-a-vis other's. Till date ,we are the first forum to have such a versatile system ...check it out at <a href="http://www.techenclave.com/forums/RigGallery.html" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://www.techenclave.com<wbr>/forums/RigGallery.html </a><br />transcending the role of a forum .<br /><span style="font-weight: bold;"><br /><hr /></span></span></span></span></span></span></span><div style="text-align: left;"><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/x/blogger/5004/157/1600/214744/te%3DrigG2.jpg"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 296px; height: 143px;" src="http://photos1.blogger.com/x/blogger/5004/157/320/118936/te%3DrigG2.jpg" alt="" border="0" /></a><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/x/blogger/5004/157/1600/422309/te%3DrigG.jpg"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 178px; height: 141px;" src="http://photos1.blogger.com/x/blogger/5004/157/320/989968/te%3DrigG.jpg" alt="" border="0" /></a></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></div><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><span style="font-weight: bold;"><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /></span><font><font><span style="font-weight: bold;">4 ) TE iTrader ( Market )<br /></span>A custom built environment that provides a better showcase of the product that users put up for sale .<br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/x/blogger/5004/157/1600/855129/te-market.jpg"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 233px; height: 158px;" src="http://photos1.blogger.com/x/blogger/5004/157/320/860335/te-market.jpg" alt="" border="0" /></a><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/x/blogger/5004/157/1600/892078/te-itrader.jpg"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 244px; height: 156px;" src="http://photos1.blogger.com/x/blogger/5004/157/320/181629/te-itrader.jpg" alt="" border="0" /></a><br /><br /><br /><br /><font><span style="font-weight: bold;"><br /><br /><br /><br /><br /><br />5 ) TE Price Guide<br /></span>Based on feedback over the years ,we even felt the need for a comprehensive and updated price guide for hardware ,whatever be the city you are in india. So welcome another custom built app . the TE Price Guide located at <a href="http://www.techenclave.com/forums/hardware-prices.html" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://www.techenclave.com<wbr>/forums/hardware-prices.html</a> which has now attained a sort of lengendary status of sorts over at the "Build Your Own Rig" followers in India . We even have a seperate <span style="font-weight: bold;"><span style="font-weight: bold;"><span style="font-weight: bold;">Market Section </span></span></span></span>where users can swap their new and old stuff .This initiative has gathered a lot of traction for genuine buyers and sellers especially ,for reaching users in the the non metros .<br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/x/blogger/5004/157/1600/442808/te-price.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 296px; height: 166px;" src="http://photos1.blogger.com/x/blogger/5004/157/320/617476/te-price.jpg" alt="" border="0" /></a><script></script><font><font><font><script><!-- D(["mb","<font><font><font><font></span></span></span></span><br /><font><br />The TE Family<br /></span>\nApart from helping troubleshooting across 20 odd forum sections ,being part of the Techenclave , has helped bridge distance for the indian techie and transcend geekdom ! <font><br /></span><font>\n<font></span></span>TechEnclave 's depth of quality in its reviews and experienced members helped it become a source to present demos at hardware branding and launch expos . Infact ,name any piece of hardware or software ,and you can be sure that theres someone from techenclave whos' got it first or swears by their favourite utility . Also of note is the sister forum that we've created called FunEnclave over at \n<a><font><font>www.funenclave.com</span></span></a><br /><br /> The people behind Team TechEnclave ( <a>http://www.techenclave.com<wbr>/forums/staff.html\n</a> ) are dedicated enthusiasts who came together because of their expertise and being identified as uber geeks and experts by their peers ,combined with a blend of effective management , marketing and creative abilities - to make things happen . We take pride in building one of India's Biggest Technology Forums from scratch without any commercial backing or investment by putting back all ad generate revenue back into getting better servers , bandwidth and so on .( You can see a brief history and evolution of techenclave over at \n<a>http://www.techenclave.com<wbr>/forums/techenclave-history",1] ); //--></script><br /><br />The TE Family<br />Apart from helping troubleshooting across 20 odd forum sections ,being part of the Techenclave , has helped bridge distance for the indian techie and transcend geekdom ! <span style="font-weight: bold;"><br /></span><span style="font-weight: bold;"> </span>TechEnclave 's depth of quality in its reviews and experienced members helped it become a source to present demos at hardware branding and launch expos . Infact ,name any piece of hardware or software ,and you can be sure that theres someone from techenclave whos' got it first or swears by their favourite utility . Also of note is the sister forum that we've created called FunEnclave over at <a href="http://www.funenclave.com/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">www.funenclave.com</a></span><br /><br />The people behind TechEnclave ( <a href="http://www.techenclave.com/forums/staff.html" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://www.techenclave.com<wbr>/forums/staff.html </a> ) are dedicated enthusiasts who came together because of their expertise and being identified as uber geeks and experts by their peers ,combined with a blend of effective management , marketing and creative abilities - to make things happen . We take pride in building one of India's Biggest Technology Forums from scratch without any commercial backing or investment by putting back all ad generate revenue back into getting better servers , bandwidth and so on .( You can see a brief history and evolution of techenclave over at <a href="http://www.techenclave.com/forums/techenclave-history-and-evolution-720.html" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://www.techenclave.com<wbr>/forums/techenclave-history<script><!-- D(["mb","<wbr>-and-evolution-720.html</a> ) And we hope to keep the quality and members right up there ,to take TechEnclave to greater heights ! 8 ) \n<br /><br /><br /> If TechEnclave does not fit into your realm of indian innovations - we will understand . But If you think that this community has eveolved ,then do let me know so that I can get back to you with any other screenshots or information you might need. \n<br /><font><font><font><font><font></span></span></span></span></span><font>\n<font><font><font><font><br /></span></span></span></span></span><br />Keep Clicking,<br />Bhasker V Kode , www/bosky101.blogspot.com\n<br />for the Team @ TechEncalve.com<font><font><font></span></span></span><br /><br /><font><font>\n<font><font></span></span></span></span><font><font><font><font>\n</span></span></span></span>\n\n",0] ); //--></script><wbr>-and-evolution-720.html</a> ) And we hope to keep the quality and members right up there ,to take TechEnclave to greater heights ! 8 )<br /><br /><br />If TechEnclave does not fit into the realm of indian innovations - we will understand . But If you think that this community has evolved ,then do let us know ,and drop in at the forums and find out for yourself . <a href="http://www.techenclave.com/forums/">See you there... </a><br /><br /><br />Keep Clicking,<br />Bhasker V Kode ,<br /><br /><span style="font-size:85%;"><span style="font-style: italic;">PS : </span><span style="font-weight: bold; font-style: italic;"></span> <span style="font-weight: bold;"></span></span><span style="font-style: italic;">If you do want to explore advertising options ,feel free to go through the page at http://www.techenclave.com/forums/advertisewithus.html .</span><br /><br /><span style="font-style: italic;font-size:85%;" >This is a post meant to act as Profile of TechEnclave . So while it very well would be in the public domain,i'd appreciate the linkback .</span><br /><br /></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span><p><span class="technoratitag"><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font>Technorati Tags: <a href="http://www.technorati.com/tags/techenclave" rel="tag">techenclave</a>, <a href="http://www.technorati.com/tags/bosky101" rel="tag">bosky101</a>, <a href="http://www.technorati.com/tags/india" rel="tag">india</a>, <a href="http://www.technorati.com/tags/tech" rel="tag">tech</a>, <a href="http://www.technorati.com/tags/geeks" rel="tag">geeks</a>, <a href="http://www.technorati.com/tags/forums" rel="tag">forums</a>, <a href="http://www.technorati.com/tags/portal" rel="tag">portal</a></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></p>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com7tag:blogger.com,1999:blog-5148702.post-1169920821189249792007-01-27T23:29:00.000+05:302007-01-27T23:30:22.286+05:30Good to be back in ChennaiMe in chennai for a few days...after a long break ,and the weekends been gr8 so far.<br /><br />Attended the alumni meet and committed to helping out in the alumni site setting up as well .those guys are really stepping on the networking ,and the urgency is more so to gear up fto celebrate SVCE's 25th year of graduation to be in 2010 .<br /><br />Showed off my new black dual-core 120 gb sata with dvd writer hp laptop to everyone at home here . its damn mobile and very sleek . am absolutely in love with it,and still think it was a better option that going for a mac ! (incidenly we just got another acbook ,bring the total to two now in our -10 odd strong develoepr & testing army at tutorvista's only office ( stpi ,electronic city,bangalore )<br /><br />good news continues with my bro getting into Georgia tech, TAMU ,and Duke for his industrial engineering as well . Hes still waiting for stanford ,yale and darthmouth . All the best Bhargav !<br /><br /><a href="http://www.techenclave.com/forums/help-regarding-ajax-85400.html">Wrote a nice piece </a>that i think a lot of my juniors at <a href="http://svce.ac.in">SVCE</a> could use , and i think spend some time thinking about ,especially if your in a CS / IT department and contemplating a career in web based development.<br /><br />Speaking of TE, the member base at <a href="http://www.techenclave.com">TechEnclave</a> has passed 13,500 geeks and looking good , We just completed a deal with Reliance Webworld for a banner display,and completed a small announcement deal with Rashmi Bansal - Editor, Jammag as well .<br /><br />on the work front ,<a href="http://www.tutorvista.com">tutorvista</a> just celebrated its first year anniversay at HINT, in bangalore central .a disc /pub that we booked all for ourselves and EVERYthing on the house !!! : ) . that was a freaking awesome party ! Getting into some new projects in office as well with the newsletter, feed syndication,apart from the now deployed googlish Calendar utility released live to our 2500+ paid customers. We're expanding on the hiring front as well - tutors,operations , developers ... conducted my first phone interview myself ;) ,plus its exciting that after our secodn round of funding of 10mln ,we're now going from the incubated unit at stpi to a full fledged 33 story byulding of our in the heart of Bangalore's corporate zone off the airport road.<br /><br /><br />went for a nice long move - salame ishq ,entertaining , india Vs west indies cricket match happening live here in chennai . and so is the cult fest saarang here at iit-madras campus.met up with my old buddies from school , called a few more . had a nice day out with my family and nrought my gf to my house for the first time to my mom and grand mom. spoke to my dad who's sailing after a long time . Madhu will continue to be in Biocon,bangalore till she leaves for her MS. And i think its time i thought about my plans for the near and distant future as well -education wise, health wise , personal life, wise in all respects ... Salsa classes have been doing me good as well....<br /><br />Cheers to a rocking start to 2007 ....life is beautiful .... 8 )<br /><br />Keep Clicking,<br />Bhasker V Kode<br /><br /><br /><p><span class="technoratitag">Technorati Tags: <a href="http://www.technorati.com/tags/india" rel="tag">india</a>, <a href="http://www.technorati.com/tags/chennai" rel="tag">chennai</a>, <a href="http://www.technorati.com/tags/bangalore" rel="tag">bangalore</a>, <a href="http://www.technorati.com/tags/tutorvista" rel="tag">tutorvista</a>, <a href="http://www.technorati.com/tags/techenclave" rel="tag">techenclave</a>, <a href="http://www.technorati.com/tags/bhasker" rel="tag">bhasker</a>, <a href="http://www.technorati.com/tags/kode" rel="tag">kode</a>, <a href="http://www.technorati.com/tags/bosky101" rel="tag">bosky101</a>, <a href="http://www.technorati.com/tags/svce" rel="tag">svce</a>, <a href="http://www.technorati.com/tags/life" rel="tag">life</a><br /></span><br /></p>Boskyhttp://www.blogger.com/profile/14112196631031678210noreply@blogger.com0