tag:blogger.com,1999:blog-79329993602882175882024-03-13T12:16:20.116+00:00Inside two stupid trianglesjust about anything...shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.comBlogger24125tag:blogger.com,1999:blog-7932999360288217588.post-2030290953771506302013-01-31T11:35:00.001+00:002013-01-31T11:35:56.132+00:00Html Javascript links<div dir="ltr" style="text-align: left;" trbidi="on">
http://ie.microsoft.com/testdrive/HTML5/CompatInspector/help/post.htm</div>
shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com0tag:blogger.com,1999:blog-7932999360288217588.post-20727942953326751592012-10-16T16:29:00.001+01:002012-10-16T16:29:55.749+01:00iOS dev links<div dir="ltr" style="text-align: left;" trbidi="on">
<a href="http://taylor.fausak.me/2012/03/27/ios-web-app-icons-and-startup-images/">http://taylor.fausak.me/2012/03/27/ios-web-app-icons-and-startup-images/</a></div>
shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com0tag:blogger.com,1999:blog-7932999360288217588.post-57950332172008302452012-06-13T12:28:00.001+01:002012-06-13T12:28:56.292+01:00Android Links<div dir="ltr" style="text-align: left;" trbidi="on">
<a href="http://www.appinventor.mit.edu/">http://www.appinventor.mit.edu/</a></div>shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com0tag:blogger.com,1999:blog-7932999360288217588.post-51552161477142035522012-05-09T23:31:00.001+01:002014-03-29T20:03:13.376+00:00Watching TV<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
Its been 3 months since i last watched TV programs on a TV box. Why? Because i don't have one and buying a TV just for freeview channels didn't seems convincing enough and to get sky or virgin TV subscription is pretty expensive. So, i decided not to buy a TV and not to get a TV subscription.Well, it turns out, TV industry has started to realized the opportunity of reaching an audience like me, one who has internet connection, a laptop, no TV box, and doesn't mind few ads to watch TV for free (even though the channels are all freeview ones). <br />
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<a href="http://www.bbc.co.uk/iplayer/">iplayer</a>, a bbc online channel for tv or radio. You can watch live channels (tv or radio), can browse through programs and watch them anytime you like. i am not sure if its available anywhere else in the world but its surely is available in UK, and have been watching live or catching up with missed or recorded programs. It a BBC online player, so it doesn't have any ads, which is great but as its a BBC player, it only has BBC channels. Apart<br />
from being available online, its also available as mobile apps. Watching programs on the go (going to work on bus/train), has made commuting so much easier and better.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<a href="http://wwvw.tvcatchup.com/">tvcatchup.com,</a> its has over 40 freeview channels, but shows a couple of ads before the live channel starts. BBC, itv, channel 5, flim4, etc, almost all important freeview chanels are there and switch between channels quite easy. The only annoying part is that when you switch channels, it shows a couple adds again, but if you are changing channels too often in very short period of time, it does not show ads that many time, which is a very nicely done, and doesn't make it that annoying while changing channels. TVcatchup is also avaibale as mobile app and so watching live tv on the go, like with iplayer.<br />
<br />
There are some other channel specific mobile apps that have come up recently, itvPlayer and demand 5 (channel 5) Like iplayer app, you can catch up with programs that you have missed or you can browser/search programs and watch as and when you like.<br />
<br />
I have them all and that's where i get my TV experience these days. I stream through my 2 mbps tethered mobile connection and my TV experience has been very smooth. The only thing thats not as smooth as TV is that, while chaning channels, i have been click mouse buttons rather than remote buttons. Once ii got used to click mouse buttons, online and mobile apps tv experience has been really nice. TV content whenever, wherever and however you want. Be it on your computer,on mobile or on tablets, its available. Whether you are at home, at cafe or on a bus, its available. The only thing you need is internet and these days you are more likely to have an internet connection that a TV connection. And if you have internet coonection, it is now for sure that you dont need TV connection to watch TV, be it just the freeview ones. That's how i have been watching TV for the last 3 months and i feel like it'll be a while before i buy TV box.</div>
shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com0tag:blogger.com,1999:blog-7932999360288217588.post-63640482686807896942012-04-28T00:39:00.002+01:002014-03-29T20:03:42.982+00:00Pep Guardiola<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
</div>
Pep Guardiola. Honest, intense and tiki-taka. His interviews, Barcelona's play and players playing for him says it all. The style and humbleness with which Barca plays has made every football entusiats fall in love with football again. <br />
<br />
Watching Barca's game every week has been very exciting for me. Be it beating Madrid or watching Champions Leaguse games, it been an exciting and amazing footballing experience. Players like Messi, Xavi, Inesta playing beutifully says a lot about how Pep has managed to bring together beautiful players to play a very beautiful game.<br />
<br />
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.youtube.com/embed/ifd-5jN-y38?feature=player_embedded' frameborder='0'></iframe>We all know by now, beautiful game is the Barca way, ingraned into each La Massia players from chilhood, once started by <span dir="auto">Johan Cruyff. And Pep has now implemented the phisophy and style to perfection. </span><br />
<br />
<span dir="auto">And now he's said goodbye to Barca and will be leaving behind the continuation of philosohy which he learnt during his days at La Massia. He's leaving behid the best club, team and players in the world today. To realise that its time for him to leave those things behind, to realise that he may not offer anything better for the club and say boodbye, says a lot of about character and intelligence in the man.</span><br />
<br />
<span dir="auto">It has been such a joy watching Barca play football during his time as Barca coach, and i will surely miss him next season. I hope the takes a good reast and one day, comes back to Barca to continue improving on the philosophy<span dir="auto">. Pep, you have showed the world how the philosohy of beautiful game can be played at a compititive level recognising new and young talents and trusting them with making the game beautiful. </span></span><br />
<br />
<span dir="auto"><span dir="auto">It was a joy, it has been sad, but everyone needs some rest and hope you come back to football with much more enthusism and exceitement. So long...</span></span></div>
shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com0tag:blogger.com,1999:blog-7932999360288217588.post-44570666447511526352011-12-12T13:53:00.001+00:002011-12-12T13:53:06.028+00:00Fuslogvw - Assembly Binding Log Viewer<div dir="ltr" style="text-align: left;" trbidi="on">
MSDN description<br />
<a href="http://msdn.microsoft.com/en-us/library/e74a18c4(vs.71).aspx">http://msdn.microsoft.com/en-us/library/e74a18c4(vs.71).aspx</a><br />
<br />
Enable/disable assembly binding logs:<br />
<a href="http://www.paraesthesia.com/archive/2004/10/20/fusion-log-viewer-settings-changer.aspx">http://www.paraesthesia.com/archive/2004/10/20/fusion-log-viewer-settings-changer.aspx</a><br />
<br />
Very useful when assembly bindings throw exception. Give you details on what the issues are. </div>shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com0tag:blogger.com,1999:blog-7932999360288217588.post-31890982435642779272011-04-25T04:56:00.005+01:002011-04-25T05:00:52.046+01:00Plus 1 (+1).. me too...<div dir="ltr" style="text-align: left;" trbidi="on"><div style="text-align: justify;"><div style="text-align: left;"><a href="http://www.google.com/+1/button/">Google +1</a>, you must have already known about it by now. If you haven't read/heard about it much or at all then, well, it's google's take on socializing search and its ecosystem. Most of the blogshere say that its google's counter on facebook and in a way it is. Facebook is slowly becoming the entry to web or widow to the web world. Friends, links, likes, search (which for now is not there), shopping, movies, games, etc, you name it and its all there. As far as i could rememer thats what the world wide web was and slowly facebook is become the web world wide for a lot of people. Search is the only thing that Facebook doesn't do well even with its own data generated by its own users. It gives these data to Bing for them to make some meaning out of it in search terms.</div></div><br />
<div class="separator" style="clear: both; text-align: left;"><object class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://3.gvt0.com/vi/OAyUNI3_V2c/0.jpg" height="266" width="320"><param name="movie" value="http://www.youtube.com/v/OAyUNI3_V2c&fs=1&source=uds" /><param name="bgcolor" value="#FFFFFF" /><embed width="320" height="266" src="http://www.youtube.com/v/OAyUNI3_V2c&fs=1&source=uds" type="application/x-shockwave-flash"></embed></object></div><div class="separator" style="clear: both; text-align: left;"><br />
</div><div class="separator" style="clear: both; text-align: left;">Google, in the long term, is looking to socialized the search. This is an <a href="http://www.google.com/experimental/">opt in</a> "experiment" for now, where you have to make you profile public. Did you even know google profile existed? Anyway, if you optin for the experiment, you'll then see +1 buttons near search results and ads too. So, you can not only like links in search result but also ads in the page. Your likes are analysed by Google and will try to show you results that you trusted before or the one that you +1'ed, whenever you search next time. This is a case of for you by you, and so, not yet socialized.</div><br />
<div style="text-align: justify;"><div style="text-align: left;">Socializing is the next step, for now its personalization. And, i think Google is doing the right thing. One must know how to personalize before one can socialize. With the multiple failures it had with social connections, I believe they have now understood that being a search engine, without understanding a user's personality, it is very difficult to understand its social connections. And once its understands personalities, to connect these personalities (in search results) is much better way of gradual socialization of search results.</div></div><br />
<div style="text-align: justify;"><div style="text-align: left;">Well, that was about search and the same is true for ads. And, ads are what makes Google those billions of dollars and to make ads social, what else can be better than that. I like puma shoes and I bought them once. Google knows about it. There's a Puma ad for a shop near me or an online shop. I click on it immediately (most likely) and may buy one if price is right or the shoe is good enough to shell out some money. Cha-chin and that's money for Google and its ad partner and more trust in Google to display its ads on, rather than go to some rival (Facebook) for ads.</div></div><br />
<div style="text-align: justify;"><div style="text-align: left;">Google is getting into social search & ads, and before that, its trying at personalized search & ads, which I think is a very smart move. Its still a long long way from where I can see what Google can do but only time will tell whether we'll like socializing our search results and how it'll affect our search habbits.</div></div></div>shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com1tag:blogger.com,1999:blog-7932999360288217588.post-61841256379359828762011-04-24T20:30:00.003+01:002011-04-25T03:07:00.330+01:00Dell Vostro 3450 and iPhone Tethering<div dir="ltr" style="text-align: left;" trbidi="on">I have finally purchased a laptop :), a Dell Vostro 3450 (Brass color). Its a 14 inch laptop with brass color and looks beautiful, works smooth and feels just right, apart from the keyboard format change to EU. Love it.<br />
<div class="separator" style="clear: both; text-align: center;"><a href="http://i.dell.com/images/global/products/vostronb/vostronb_highlights/vostro-3450-product-details-design2.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="109" src="http://i.dell.com/images/global/products/vostronb/vostronb_highlights/vostro-3450-product-details-design2.jpg" width="320" /></a></div><br />
<br />
<br />
<br />
<br />
<br />
<br />
And the next thing I had to do was to get net connection. I am already paying 35 pounds for my unlimited data plan on my iphone. No other phones had unlimited data plan and that was the only reason I both an iPhone, an unlimited data plan. So, to pay another 10-15 pounds for a separate connection for my laptop is foolishness. Well, the usual iPhone fanboys will most likely do it (they prefer to pay for what's not necessary), but I like to look for options to get it without paying or paying much.<br />
<br />
I search net for Tethering on Three network, which said that it was possible in my network with my data plan to tether without any extra charge or add-ons. As such, I tried tethering without looking for any alternatives, but to my disappointment, it didn't work. So, the only other option was to jailbreak my iPhone, which is totally LEGAL, and well searched for the same.<br />
<br />
After some searches, <a href="http://greenpois0n.com/">greenPois0n </a>was the software and a youtube video (below) showed me how to do it. After 10-15 mins, voila, I could tether to my laptop.<br />
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.youtube.com/embed/oHG-mHei9O0?feature=player_embedded' frameborder='0'></iframe><br />
<br />
<br />
<br />
<br />
<br />
And, I am currently tethering through my iPhone :).<br />
<br />
</div>shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com0tag:blogger.com,1999:blog-7932999360288217588.post-62083519133824490802011-03-23T13:49:00.000+00:002011-03-23T13:49:03.760+00:00In The Cards: Why Amazon *Has* To Make An Android Device Now<a href="http://techcrunch.com/2011/03/23/amazon-android-device/">In The Cards: Why Amazon *Has* To Make An Android Device Now</a>shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com0tag:blogger.com,1999:blog-7932999360288217588.post-55703992408745339512010-07-04T21:00:00.001+01:002010-07-04T21:43:46.753+01:00Khan Market, Khan Chacha and Mutton Kakori TikkaWell, I have finally settled down (almost) in Gurgoan and i don't want to lie about it.. its been hell, temperature wise. I am current staying at a PG and its been fun staying with two of my flat mates (the heat, still in the background), Sapan and Ripu. Yesterday we went to Khan market, Delhi and its was a good change from the usual malls and just-released-movies of our past weekends. There, we went to Khan Chaha, supposedly one of the oldest and best places to have kababs. And, rightly so, i had never had better mutton kabas anywhere else before that. And the best one is the Kakori kaba. You should never miss that if you are in delhi and specially if you are in khan market. It just melts in your mouth and am not exaggerating about it at all. After that we went to a bar, had a couple of beers watching Argentina lose 4-0 !!!!!.... I know...shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com2tag:blogger.com,1999:blog-7932999360288217588.post-46074222673653954882010-05-13T19:46:00.003+01:002010-05-13T20:33:37.251+01:00Bye Bye Thomson Reuters.. Hello Clickable...Wednesday, 12th May 2010, was my last day at <a href="http://www.thomsonreuters.com/">Thomson Reuters (TR)</a>. Looking back at my 2 year at TR, I would say it was a really good experience, learning and trying to implement new things. All the best to my team CompanyOverview (IB), and TR.<br />
<div><br />
</div><div>Now am moving to <a href="http://www.clickable.com/">Clickable</a>. Its an online ad management tool which "<span class="Apple-style-span" style="color: #1d1d1d; font-family: 'Lucida Grande', Geneva, Verdana, Arial, sans-serif; font-size: 12px; line-height: 18px;">makes search advertising Simple, Instant and Profitable(TM)<span class="Apple-style-span" style="color: black; font-family: Georgia, serif; font-size: 16px; line-height: normal;">".</span></span></div><div><span class="Apple-style-span" style="color: #1d1d1d; font-family: 'Lucida Grande', Geneva, Verdana, Arial, sans-serif; font-size: 12px; line-height: 18px;"><span class="Apple-style-span" style="color: black; font-family: Georgia, serif; font-size: 16px; line-height: normal;"><br />
</span></span></div><div><span class="Apple-style-span" style="color: #1d1d1d; font-family: 'Lucida Grande', Geneva, Verdana, Arial, sans-serif; font-size: 12px; line-height: 18px;"><span class="Apple-style-span" style="color: black; font-family: Georgia, serif; font-size: 16px; line-height: normal;">From <a href="http://www.clickable.com/Corp/AboutUs.aspx">clickable's about us page</a>:</span></span></div><div><span class="Apple-style-span" style="color: #5d5d5d; font-family: Arial, Helvetica, sans-serif; font-size: 12px; line-height: 15px;">..make it easy for marketers to manage performance across all major ad networks, including Google, Yahoo and Microsoft. Clickable’s powerful recommendations and reporting make marketers more efficient, effective and confident – even at the very first login. Clickable’s ActEngine actually learns marketers’ preferences and enforces best practices to maximize return. Clickable always listens and constantly improves. That’s why customers often say: “Clickable is like having a trusted advisor always by your side ensuring success.”</span></div><div><br />
</div><div>Its been one of the finalist at Techcrunch40, and have been recognized with host of other awards. I am really excited to work and learn with all the intelligent people at Clickable.</div>shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com0Bengaluru, Karnataka, India12.971606 77.59437612.6370475 77.127456999999993 13.3061645 78.061295tag:blogger.com,1999:blog-7932999360288217588.post-51674120526236838642010-04-21T12:16:00.000+01:002010-04-21T12:16:26.467+01:00Some Important linksAppDomain and Process<br />
<a href="http://odetocode.com/Articles/305.aspx">http://odetocode.com/Articles/305.aspx</a><br />
<br />
Extension Methods<br />
<a href="http://msdn.microsoft.com/en-us/library/bb383977.aspx">http://msdn.microsoft.com/en-us/library/bb383977.aspx</a><br />
<br />
Top 25 Most Dangerous Programming Errors<br />
<a href="http://cwe.mitre.org/top25/">http://cwe.mitre.org/top25/</a><br />
<br />
Linq Examples<br />
<a href="http://msdn.microsoft.com/en-us/vcsharp/aa336747.aspx#sumGrouped">http://msdn.microsoft.com/en-us/vcsharp/aa336747.aspx#sumGrouped</a>shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com0tag:blogger.com,1999:blog-7932999360288217588.post-66521385325213420082010-03-08T06:06:00.002+00:002010-03-08T06:11:11.004+00:00RIP IE6Well, as you all may have known by now, IE6 was been laid to rest with an open invite to all who wanted to say good bye to IE6. Its a sad scenario, since it has given so much to the online community, though killing Netscape on its way. But, i am really happy that this has now happened and big corporate companies stop supporting IE6. And now, we can start looking towards HTML5.<div><br /></div><div>Here are few links to go through:</div><div><a href="http://techcrunch.com/2010/03/05/ie6-funeral/">http://techcrunch.com/2010/03/05/ie6-funeral/</a></div><div> <p class="MsoNormal"><a href="http://www.cnn.com/2010/TECH/03/04/ie6.funeral/index.html">http://www.cnn.com/2010/TECH/03/04/ie6.funeral/index.html</a></p> <p class="MsoNormal"><a href="http://ie6funeral.com/">http://ie6funeral.com/</a></p></div>shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com0tag:blogger.com,1999:blog-7932999360288217588.post-19108580075217152962008-12-24T14:24:00.002+00:002008-12-24T17:46:45.789+00:00Update: AutoComplete using YUI<div xmlns="http://www.w3.org/1999/xhtml">Previously i had written about how i had made a wrapper control for .net from YUI. In that control i still had to write some javascripts and thus needed some hard work before the control was in a working condition. Now, I have made it into a class library and doesn't require any javascript to be written. Add the dll as a reference and you can use this control like a normal control.<br /><br />Here is the download link <a href="http://abhishekshrestha.posterous.com/autocomplete-yui-net-source">http://abhishekshrestha.posterous.com/autocomplete-yui-net-source</a><br /><br /></div>shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com0tag:blogger.com,1999:blog-7932999360288217588.post-51878411781919406522008-12-17T20:14:00.004+00:002012-01-16T11:27:24.749+00:00Some useful .net specific links<div dir="ltr" style="text-align: left;" trbidi="on">
I have few links that may be helpful to you guys:<br />
<div>
<br />
<div>
1. Turning an .<span class="blsp-spelling-error" id="SPELLING_ERROR_0">ascx</span> User Control into a Redistributable Custom Control<br />
<a href="http://msdn.microsoft.com/en-us/library/aa479318.aspx">http://msdn.microsoft.com/en-us/library/aa479318.aspx</a><br />
<div>
if you don't want to go through the <span class="blsp-spelling-error" id="SPELLING_ERROR_1">msdn</span> article, here is a links to a shorter article on creating custom control from user control</div>
</div>
<div>
<a href="http://www.dotnetspider.com/forum/ViewForum.aspx?ForumId=65008">http://www.dotnetspider.com/forum/ViewForum.aspx?ForumId=65008</a></div>
<div>
<br /></div>
<div>
2. Ten must have tools for .net developer</div>
<div>
<a href="http://msdn.microsoft.com/en-us/magazine/cc300497.aspx?pr=blog">http://msdn.microsoft.com/en-us/magazine/cc300497.aspx?pr=blog</a></div>
<div>
<br /></div>
<div>
3. Visual Studio <span class="blsp-spelling-corrected" id="SPELLING_ERROR_2">keyboard</span> shortcuts</div>
<div>
<a href="http://www.codinghorror.com/blog/files/Visual%20Studio%20.NET%202005%20Keyboard%20Shortcuts.htm">http://www.codinghorror.com/blog/files/Visual%20Studio%20.NET%202005%20Keyboard%20Shortcuts.htm</a></div>
<div>
<br /></div>
<div>
4. Static Code Analysis (<span class="blsp-spelling-error" id="SPELLING_ERROR_3">FxCop</span> is a great tool to go with)</div>
<div>
<a href="http://msdn.microsoft.com/en-us/magazine/dd263071.aspx">http://msdn.microsoft.com/en-us/magazine/dd263071.aspx</a></div>
<div>
<br /></div>
<div>
5. Guidelines for Names in .net (Naming <span class="blsp-spelling-corrected" id="SPELLING_ERROR_4">conventions</span>)</div>
<div>
<a href="http://msdn.microsoft.com/hi-in/library/ms229002(en-us).aspx">http://msdn.microsoft.com/hi-in/library/ms229002(en-us).aspx</a></div>
<div>
<br /></div>
<div>
6. <span class="blsp-spelling-error" id="SPELLING_ERROR_5">jQuery</span> <span class="blsp-spelling-error" id="SPELLING_ERROR_6">Intellisense</span> in VS 2008 (<span class="blsp-spelling-error" id="SPELLING_ERROR_7">Scott Gu</span>)</div>
<div>
<a href="http://weblogs.asp.net/scottgu/archive/2008/11/21/jquery-intellisense-in-vs-2008.aspx">http://weblogs.asp.net/scottgu/archive/2008/11/21/jquery-intellisense-in-vs-2008.aspx</a><br />
<br />
7. code navigation and generation improvements<br />
<a href="http://visualstudiogallery.msdn.microsoft.com/d491911d-97f3-4cf6-87b0-6a2882120acf/">http://visualstudiogallery.msdn.microsoft.com/d491911d-97f3-4cf6-87b0-6a2882120acf/</a>
</div>
</div>
</div>shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com0tag:blogger.com,1999:blog-7932999360288217588.post-62883482727612513892008-12-15T18:57:00.010+00:002008-12-15T19:34:05.055+00:00Timer application on .net c#<div style="color:black;"><div>In some projects i have worked, there have been requiremts of console application which runs on the background and does(requests) some processing at a certain interval of time. For example, if you have a newsletter subscription system in you site, you may want to send news at 8:00 AM every monday. For this, a console application will run as a schedule task or windows service and if set as schedule task, it will runt at that particular scheduled time.<br /> </div><br /> <div>Now, say for example, you newletter subscription for 3 types of newsletters, one is sent every monday 8 A.M, the second one is sent every Monday-Wednesday and the third one is sent everyday. Since, its newsletter and has the same database of subscribers but only differs in the subscripttion type (which definesd which trpe of newsletter to sent to the subscriber). And most importantly you do not want to write 3 different console applications (or timers) with almost same logic.Extending the newsletters, now say, you want to process(or request) a database call every 10 mins. So, we have 4 different implementation at different time intervals.</div> <br /><br /> <div><span style="font-weight: bold">Requirements:</span></div><div>1. Application running in background like a timer</div><div>2. More than one process request with independent time intervals</div> <div><br /> <span style="font-weight: bold;">High level Logic:</span></div><div>1. Get the list of process requests</div><div>2. Check if it is time to make that request</div><div>3. If it is time then make a request</div><div><br /></div><div> <span style="font-weight: bold;">1. Getting the list of process requests:</span></div><div>Create an XML file with the following settings,</div> <div style="height: 200px; overflow-y: scroll;"><br /> <?xml version="1.0" encoding="utf-8" ?><br /><ProcessList><br /> <Process Name="NewsletterMonday"><br /> <Times><br /> <Time Value="8:30 AM" ClockType="_12Hr" /><br /> </Times><br /> <Days Type="Selected"><br /> <Day Value="Monday" /><br /> </Days><br /> </Process><br /> <Process Name="NewsletterMondayToWednesday"><br /> <Times><br /> <Time Value="10:30 PM" ClockType="_12Hr"/><br /> </Times><br /> <Days Type="Range"><br /> <Day Value="Monday" /><br /> <Day Value="Wednesday" /><br /> </Days><br /> </Process><br /> <Process Name="NewsletterAllDays"><br /> <Times><br /> <Time Value="15:00" ClockType="_24Hr"/><br /> </Times><br /> <Days Type="All" /><br /> </Process><br /> <Process Name="DatabaseCallEveryTenMinsAllDays"><br /> <Times><br /> <Time Value="10" ClockType="Min"/><br /> </Times><br /> <Days Type="All" /><br /> </Process><br /></ProcessList><br /> </div><div>This seetings xml defines what type of process are there and the time to make the<br /> process request.<br /> </div><div><br /> <span style="font-weight: bold;">2. Check if it is time to make that request:</span><br /> </div> <div style="height: 200px; overflow-y: scroll;"><div>private bool isProcessRequestDay()</div><div>{</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>bool isProcessRequestDay= false;<br /> </div><div><span class="Apple-tab-span" style="white-space:pre"> </span>switch (_Days.Type)</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>{</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>case DayType.All:</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>isRefreshDay = true;</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>break;</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>case DayType.Range:<br /></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>isProcessRequestDay = (DateTime.Today.DayOfWeek >= _Days[0].Value && <span class="Apple-tab-span" style="white-space: pre;"></span>DateTime.Today.DayOfWeek <= _Days[_Days.Count - 1].Value);<br /> </div><div><span class="Apple-tab-span" style="white-space:pre"> </span>break;<br /> </div> <div><span class="Apple-tab-span" style="white-space:pre"> </span>case DayType.Selected:</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>foreach (Day day in _Days)</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>{</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>if (day.Value == DateTime.Today.DayOfWeek)</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>{</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>isProcessRequestDay= true;</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>break;</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>}</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>}</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>break;</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>}</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>return isProcessRequestDay;</div><div>}<br /> </div><br /> </div><br /> <div><br /> _Days is a Generic List <day> class with type as a property which contains<br /> the value from < type="----"> from the settings xml. [Note: You will have<br /> to load the settings to the its corresponding classes. ]<br /> </div><div><br /></div><div> Now, get the date and time at which the process request should be made<br /> </div><br /><div style="height: 200px; overflow-y: scroll;"><br /> <br /><div><div> private DateTime getMinProcessRequestDateTime(DateTime currentDateTime)</div><div> {</div><div> int min = 0, hr = 0, sec = 0;</div><div> int year = currentDateTime.Year;</div><div> int month = currentDateTime.Month;</div><div> int day = currentDateTime.Day;</div><div> DateTime minProcessRequestDateTime = DateTime.MinValue;</div><div><br /></div><div> foreach (ProcessRequestTime ProcessRequestTime in _ProcessRequestTimes)</div><div> {</div><div> DateTime tempProcessRequestDateTime = DateTime.MaxValue;</div><div> switch (ProcessRequestTime.ClockType)</div><div> {</div><div> case ClockType._24Hr:</div><div> string[] time24Hr = ProcessRequestTime.Value.Split(Constants.SeperatorColon);</div><div> hr = Convert.ToInt32(time24Hr[0]);</div><div> min = Convert.ToInt32(time24Hr[1]);</div><div><br /></div><div> tempProcessRequestDateTime = new DateTime(year, month, day, hr, min, 0);</div><div> if (!(currentDateTime > tempProcessRequestDateTime))</div><div> {</div><div> tempProcessRequestDateTime = tempProcessRequestDateTime.AddDays(-1);</div><div> }</div><div> break;</div><div> case ClockType._12Hr:</div><div> string[] time12Hr = ProcessRequestTime.Value.Split(Constants.SeperatorSingleSpace);</div><div> if (time12Hr[1].Equals(Constants.DateTimeMeridianPM, StringComparison.InvariantCultureIgnoreCase))</div><div> {</div><div> hr = Convert.ToInt32(time12Hr[0].Split(Constants.SeperatorColon)[0]);</div><div> }</div><div> else if (time12Hr[1].Equals(Constants.DateTimeMeridianAM, StringComparison.InvariantCultureIgnoreCase))</div><div> {</div><div> hr = Convert.ToInt32(time12Hr[0].Split(Constants.SeperatorColon)[0]);</div><div> if (hr >= 12) { hr -= 12; }</div><div> }</div><div> min = Convert.ToInt32(time12Hr[0].Split(Constants.SeperatorColon)[1]);</div><div><br /></div><div> tempProcessRequestDateTime = new DateTime(year, month, day, hr, min, 0);</div><div> if (!(currentDateTime > tempProcessRequestDateTime))</div><div> {</div><div> tempProcessRequestDateTime = tempProcessRequestDateTime.AddDays(-1);</div><div> }</div><div> break;</div><div> case ClockType.Hr:</div><div> hr = Convert.ToInt32(ProcessRequestTime.Value);</div><div> tempProcessRequestDateTime = new DateTime(year, month, day);</div><div> tempProcessRequestDateTime = tempProcessRequestDateTime.AddHours(currentDateTime.Hour - hr).AddMinutes(currentDateTime.Minute);</div><div> break;</div><div> case ClockType.Min:</div><div> min = Convert.ToInt32(ProcessRequestTime.Value);</div><div> tempProcessRequestDateTime = new DateTime(year, month, day);</div><div> tempProcessRequestDateTime = tempProcessRequestDateTime.AddHours(currentDateTime.Hour).AddMinutes(currentDateTime.Minute - min);</div><div> break;</div><div> case ClockType.Sec:</div><div> sec = Convert.ToInt32(ProcessRequestTime.Value);</div><div> tempProcessRequestDateTime = new DateTime(year, month, day);</div><div> tempProcessRequestDateTime = tempProcessRequestDateTime.AddHours(currentDateTime.Hour).AddMinutes(currentDateTime.Minute).AddSeconds(currentDateTime.Second - sec);</div><div> break;</div><div> }</div><div> //Assigning the maximum datetime less than the current date</div><div> if (tempProcessRequestDateTime > minProcessRequestDateTime)</div><div> { minProcessRequestDateTime = tempProcessRequestDateTime; _DataSource = ProcessRequestTime.DataSource; }</div><div> }</div><div> return minProcessRequestDateTime;</div><div> }</div></div><div><br /></div><div>Now, get the date and time when the last process request was made,<br /></div> <div>DateTime lastProcessRequestDateTime = {from database or file or memory};<br /></div><div><br /></div><br /></div><br /><div>Now, check if last request made before the time calculated for next request,</div><div>bool isProcessRequestTime = (minProcessRequestDateTime >= lastProcessRequestDateTime);<br /> </div><br /> <div>If the last request made was before the current calculated time for request, then it means that now is the time to make a new request. Otherwise, if the last request made is after the current calulated time for next request, then the schedule time for process request has already been made.<br /> </div><br /> <div><span style="font-weight: bold;">3. If it is time then make a request</span></div> <div>if(isProcessRequestTime)</div><div>{</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>//Call the process</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>// database call or web service call or http request call</div><div>}</div><br /><div>Hope this give some logic into how you can write a single application with process request settings that runs on background to make different process request for different time intervals.</div><br /> <div>If you require code for this example, please mail me or give your mail id in the comment section. I'll will send you the whole code for this application.</div></div>shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com0tag:blogger.com,1999:blog-7932999360288217588.post-2162192428765757702008-12-12T19:26:00.002+00:002008-12-15T17:38:02.772+00:00How to be a good development team lead?Working in quite a few companies in my professional life time and being part of a few more projects, I was lucky to have a good team lead in my starting days. With the number of projects and teams, I have liked few and not-so-much some. And if you are a lead (or aspiring to be one) , read through what a team member feels a lead should at least have in them.<br /><br /><span style="font-weight:bold;">1. Know your development platform</span><br />I believe a team lead is an integral part of the development group (a group of people with development skills). He/She is involved in coding and has a greater responsibility of taking critical decisions, apart from project planning and documentation work. For a developer to respect his lead, just taking is not enough. He/She has to be in line or ahead of the other members of the team. If you love talking and don't love coding, you better change you career. Those are part of marketing and sales important qualities. At our desk, we build products and not sell them. Without sales and marketing, we as a developer wouldn't have any job but if you are a talking person and not the doing person, being a lead will be a difficult task.<br /><br /><span class="Apple-style-span" style="font-weight: bold;">2. Be a part of the team, a team member</span><div>Being part of a team means more than just few words and lines, but most importantly it means putting your desk in the team space and working from that desk, :). I think the team member feel and attitude starts from that. Communication, understanding, discussions, help are few words that is part of being a team. Having your own room and working isolated from your team, tells a lot about how insecure and uninvolved you are as a lead.</div><div><br /></div><div><span class="Apple-style-span" style="font-weight: bold;">3. Better working environment</span></div><div>A company does its best to create a good environment for all its employees to work at, but in the end its up to the the lead that make it better or worse. A recent scientific research has found that a bad boss leads to bad health and greater chance of heart attacks to its subordinates. You should always try to create a good environment for your team members to be in a good mood and concentrate on doing their assigned job better.</div><div><br /></div><div><span class="Apple-style-span" style="font-weight: bold;">4. You are the lead</span><br /></div><div>Sunny days and beautiful flowers are not every season. There will be times when you'll have to be hard and times when you'll have to take tuff decisions, so, you should be prepared to show that you are the lead and its for them to respect your decision. You cannot be polite every time and no way be pushed around by your members, and you must be prepared to show them that you are the lead and you are there to lead others to reach a goal.</div><div><br /></div><div><br /></div>shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com2tag:blogger.com,1999:blog-7932999360288217588.post-30694222307299371602008-10-15T11:42:00.000+01:002012-06-04T22:12:21.184+01:00Asp.Net AutoComplete using YUI with multiple columns<div dir="ltr" style="text-align: left;" trbidi="on">
<span style="background-color: #fafafa; color: #777777; font-family: 'Helvetica Neue Light', HelveticaNeue-Light, 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 14px; line-height: 19px; text-align: justify;"><br /></span><br />
<span style="background-color: #fafafa; color: #777777; font-family: 'Helvetica Neue Light', HelveticaNeue-Light, 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 14px; line-height: 19px; text-align: justify;">Updated: Here is the download link </span><a href="http://abhishekshrestha.posterous.com/autocomplete-yui-net-source" style="-webkit-transition: color 0.3s; background-color: #fafafa; color: #91a70f; display: inline; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 14px; line-height: 19px; outline: none; text-align: justify; text-decoration: none;">http://abhishekshrestha.posterous.com/autocomplete-yui-net-source</a><br />
<br />
I wanted an AutoComplete with multiple columns for asp.net application and couldn't find any good example or implementation. I looked at AjaxToolkit and found that it didn't support multiple columns as result. Looking into other options i found YUI (Yahoo User Interface) AutoComplete.<br />
<br />
YUI autcomplete is a javascript control and i had to used for asp.net application. As for that i created a wrapper control in asp.net and used the control where ever needed.<br />
<br />
<span style="font-weight: bold;">Requirements</span><br />
1. Multiple columns<br />
2. Scrollable: horizontal and vertical<br />
3. Select some hidden value which is not shown in the autocomplete<br />
4. Header<br />
5. AutoComplete hover width not dependent on the textbox<br />
<br />
<span style="font-weight: bold;">Basic functionalities of YUI</span><br />
1. As you type, each text makes an ajax request to a url with the written text as the querystring<br />
2. The page hits the database with the querystring text<br />
3. The database layer responds with the set of matched values as result.<br />
4. The page then forms the data in the xml form which the autocomplete understands and send it back as response to ajax call<br />
5. The control reads the response, parses it with the predefined xml rule and then displays it.<br />
<br />
<a href="http://2.bp.blogspot.com/_ApvHOsGNqCQ/SPXPQ_rPfqI/AAAAAAAAAGQ/ky0DjCMFs80/s1600-h/1.gif"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5257336030902582946" src="http://2.bp.blogspot.com/_ApvHOsGNqCQ/SPXPQ_rPfqI/AAAAAAAAAGQ/ky0DjCMFs80/s400/1.gif" style="cursor: pointer; display: block; margin: 0px auto 10px; text-align: center;" /></a>1. Has header<br />
2. Has 6 columns<br />
3. Searchable fields : Ticker, Company Name, CUSIP, ISIN, CIK<br />
4. When selected, the CODEX is selected Letter1 is shown in the textbox. While sending the selection to the server side CODE1 is sent.<br />
5. Hover box's length is more than the textbox<br />
<br />
<br />
<a href="http://4.bp.blogspot.com/_ApvHOsGNqCQ/SPXLJUuvmEI/AAAAAAAAAFw/mS_pMKY0fxM/s1600-h/2.gif"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5257331501068949570" src="http://4.bp.blogspot.com/_ApvHOsGNqCQ/SPXLJUuvmEI/AAAAAAAAAFw/mS_pMKY0fxM/s400/2.gif" style="cursor: pointer; display: block; margin: 0px auto 10px; text-align: center;" /></a>1. Has header<br />
2. Has 3 columns<br />
3. When selected the right most non empty column value is selected.<br />
<br />
<span style="font-weight: bold;">Technical Overview</span><br />
YUI Autocomplete is a javascript control and to use it we have to write the initialization and implementation code in javascript. As .net developers we are not too comfortable with javascript and asp.net user control is always much easier to implement. Hence, I created a wrapper (user) control which defines and declares the Autocomplete when the page loads for the first time.<br />
<br />
<br />
<span style="font-weight: bold;">Required Files:</span><br />
1. animation.js (for animation)<br />
2. autocomplete.js (properties, events for autocomplete)<br />
3. connection.js (ajax, webservice, etc)<br />
4. get.js (http request)<br />
5. json.js (if using json, in this example i am using xml)<br />
6. yahoo-dom-event.js (event handling)<br />
7. AutoComplete.css (style sheet)<br />
<br />
<br />
<span style="font-weight: bold;">Html Part (ascx)</span><br />
<a href="http://3.bp.blogspot.com/_ApvHOsGNqCQ/SPXLJaBCqnI/AAAAAAAAAF4/TTy8taSH3iU/s1600-h/3.gif"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5257331502487874162" src="http://3.bp.blogspot.com/_ApvHOsGNqCQ/SPXLJaBCqnI/AAAAAAAAAF4/TTy8taSH3iU/s400/3.gif" style="cursor: pointer; display: block; height: 98px; margin: 0px auto 10px; text-align: center; width: 440px;" /></a><br />
<span style="font-weight: bold;">Properties (ascx.cs):</span><br />
<a href="http://1.bp.blogspot.com/_ApvHOsGNqCQ/SPXLJsLH1PI/AAAAAAAAAGA/9r9HZklLQyc/s1600-h/4.gif"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5257331507361993970" src="http://1.bp.blogspot.com/_ApvHOsGNqCQ/SPXLJsLH1PI/AAAAAAAAAGA/9r9HZklLQyc/s400/4.gif" style="cursor: pointer; display: block; margin: 0px auto 10px; text-align: center;" /></a><br />
Most of these properties are standard YUI Autocomplete properties. Few of them like ResetClientFn and SendMultipleInputs are related specific sending all the selected values to the sever side so that we do not display the already selected entry.<br />
<br />
You can know more about the properties by going to the YUI Aucomplete site. I have made sure that the property names are in sync with the autocomplete property names.<br />
<br />
<span style="font-weight: bold;">Using the Control</span><br />
<a href="http://2.bp.blogspot.com/_ApvHOsGNqCQ/SPXLJ8enDXI/AAAAAAAAAGI/7AGmIl5t4v4/s1600-h/5.gif"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5257331511738699122" src="http://2.bp.blogspot.com/_ApvHOsGNqCQ/SPXLJ8enDXI/AAAAAAAAAGI/7AGmIl5t4v4/s400/5.gif" style="cursor: pointer; display: block; margin: 0px auto 10px; text-align: center;" /></a></div>shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com0tag:blogger.com,1999:blog-7932999360288217588.post-57022224787830431232007-02-07T04:50:00.000+00:002008-11-19T00:51:55.657+00:00MSN Live messenger ver: 8.1 (Do not install)<a href="http://3.bp.blogspot.com/_ApvHOsGNqCQ/RcldNsaR42I/AAAAAAAAAAM/nAvKkGCx73Q/s1600-h/msnLiveError.GIF"><img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_ApvHOsGNqCQ/RcldNsaR42I/AAAAAAAAAAM/nAvKkGCx73Q/s320/msnLiveError.GIF" border="0" alt=""id="BLOGGER_PHOTO_ID_5028652948776936290" /></a><br /><br />There are problems in the new version of MSN live messenger (8.1). Since installing the new version i have been getting the contact not available message.<br /><br />After uninstalling the new version and installing my 8.0 version all my contacts are gone from my contact list, but still i am able to chat if someone else initiates the chat.shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com1tag:blogger.com,1999:blog-7932999360288217588.post-18287429492303543712006-12-04T07:46:00.000+00:002006-12-04T14:48:38.933+00:00Apple iPhone... new buzzThe rumors of iPhone has been out for sometime now, and Kevin Rose's podcast on the iPhone is a good one. Just caught this on <a href="http://www.techcrunch.com">TechCrunch.com</a> and liked the way Alex tries to squeeze out information from Kevin. <a href="http://www.techcrunch.com/2006/12/03/apple-iphone-details-from-kevin-rose/">The link of the blog at techcrunch.com.</a><br /><br />Some of the information are slide-out keyboard, 2GB and 4GB flash RAM sizes, and innovative dual-battery design. Dual-batter, one for mp3 and the other for phone is a pretty innovative design.<br /><br />You have to really watch this videos to see how Alex pulls out information on iPhone.<br /><br /><object width="425" height="350"><param name="movie" value="http://www.youtube.com/v/LBfLjqfYKM0"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/LBfLjqfYKM0" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed></object>shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com0tag:blogger.com,1999:blog-7932999360288217588.post-51313663853457992982006-11-27T17:56:00.000+00:002007-02-07T05:35:25.543+00:00My snaps<A HREF='http://photos1.blogger.com/x/blogger2/6644/968383710972682/1600/153275/collage.jpg'><IMG SRC='http://photos1.blogger.com/x/blogger2/6644/968383710972682/320/849416/collage.jpg' border=0 alt='' style='clear:both;float:left;'></A> <a href='http://picasa.google.com/blogger/' target='ext'><img src='http://photos1.blogger.com/pbp.gif' alt='Posted by Picasa' style='border: 0px none ; padding: 0px; background: transparent none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial;' align='middle' border='0' /></a> <br /><br /><script type='text/javascript' src='http://track2.mybloglog.com/js/jsserv.php?mblID=2006112705050918'></script>shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com0tag:blogger.com,1999:blog-7932999360288217588.post-50644345527389288532006-11-19T19:33:00.000+00:002006-11-27T11:13:50.222+00:00Snap Preview Anywhere (TM)<script type='text/javascript' src='http://track2.mybloglog.com/js/jsserv.php?mblID=2006112705050918'></script><br /><br /><script defer="defer" id="snap_preview_anywhere" type="text/javascript" src="http://spa.snap.com/snap_preview_anywhere.js?ap=1&key=26c72819b4c11d8cdd078cf850b2dc82&sb=0&domain=stupidtriangles.blogspot.com/"></script><br /><o:p></o:p>“Snap Preview Anywhere is a tool for site owners to provide a sticky and informative experience for your users. <b>And it's free!”<o:p></o:p></b> <p class="MsoNormal"><span style="">That’s how Snap starts with the description of its new product or rather web base tool <a href="http://www.snap.com/about/spa1.php">“Snap Preview Anywhere”.</a> <span style=""> </span><o:p></o:p>(I have used SPA in this blog. The snapshots you'll see on the links are SPA preview)<br /></span></p><p class="MsoNormal"><span style="">A simple to implement tool, SPA(Snap Preview Anywhere), is a great addition to the Snap search Engine. It gives an insight or preview to the links on the Snap search results so that you can verify if it is actually what you are searching for or is just a spoof site. To further their innovation they have now provided a free service where you can use the service to let a user in your site view any pages linked from your site. <o:p></o:p></span></p> <p class="MsoNormal"><span style=""><o:p> </o:p>This free service provided by the Snap I would presume is to act Google. The simple funda of this free service is you tell Snap that you are here in the internet and take my snap rather than Snap doing that on runtime when your link is shown on their search result for the first time. But, they are providing a cool tool so it’s great. <o:p></o:p></span></p> <p class="MsoNormal"><span style=""><o:p> </o:p>Someone said “Great things should always be free” and that’s what is happening these days, especially after Google. (I am a Google fan..:)).<o:p></o:p></span></p> <p class="MsoNormal"><span style=""><o:p> </o:p>And the best is the implementation part, you just have to add some javascript within a page’s head tag and the rest of the hardwork is done by Snap itself. Simple isn’t it, well, <a href="http://www.snap.com/about/spa1.php">then try it yourself</a>.<o:p></o:p></span></p> <p class="MsoNormal"><span style=""><o:p> </o:p>I am an avid reader of <a href="http://www.techcrunch.com/">Techcrunch.com</a> and I read about this tool in Techcrunch.Com. Link to the artcile posted on <a href="http://www.techcrunch.com/2006/11/18/add-snap-previews-to-any-site-for-free/">Snap Preview Anywhere.</a><br /></span></p>shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com2tag:blogger.com,1999:blog-7932999360288217588.post-59310169726597767302006-11-16T18:02:00.000+00:002006-11-16T18:08:00.414+00:00Commitment and ITRecent developments in my company have left me thinking. I am a supermonkey so I can think but I hope I think right and good for “my future”.<br /><br />Well, I am working at company XYZ (it’s a software company; we are so called the software architects, sounds better than programmers). It’s a small- medium sized company and was doing well until few months back.<br /><br />What happened few months back? Few key players in the company left and started their own company. Starting up a company, being an entrepreneur is good but pitching on your ex-company’s employees and pitching on your ex-company’s projects is bad. And that’s exactly what happened.<br /><br />This whole scenario has now led to the ultimate question, “Are the employees committed”? It is right for the company to know whether a person it is hiring or an employee, is really committed or not. But it is foolish for a company to expect an employee will be there forever for an average salary and that too in IT sector. (For a programmer 3 to 4 years in a company is “forever” and that’s a fact.)<br /><br />It is right for a company to know an employee’s commitment, why, because it’s investing money and time on him. More so, my company has been open to one’s capabilities and has given enough room for one to excel. I have no two thoughts on that. But it is still foolish for a company to expect an employee to stick with it forever. For god sake, this is IT company and we are programmers, it’s a small-medium company and pay is average, we are not in Japan and this no Japanese company; and I am confused as of now what to do.shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com1tag:blogger.com,1999:blog-7932999360288217588.post-26693817935882248922006-11-15T13:48:00.000+00:002006-11-15T14:24:29.392+00:00Inside the triangles<p class="MsoNormal"><span style=";font-family:Arial;font-size:10;" >Sitting on a revolving chair with my legs on my working desk and laptop on my (ofcourse) lap, I find two triangles when employees like me start their routine work at 9:30 am and try to finish their so called work at 6:30 pm. (Though I have been lucky enough to be where I am right now. No strict timing, no restrictive responsibilities and ample of space for improvement, what more can an employee expect from a small-medium company.)<o:p></o:p></span></p> <p class="MsoNormal"><span style=";font-family:Arial;font-size:10;" ><o:p> </o:p>First triangle, the corporate world, where money and time matters and second triangle the problem (here am referring to the tasks at work).<o:p></o:p></span></p> <p class="MsoNormal"><span style=";font-family:Arial;font-size:10;" ><o:p> </o:p>Someone has said “When there is a problem, there is an opportunity for solution” and well, has said it right.<o:p></o:p></span></p> <p class="MsoNormal"><span style=";font-family:Arial;font-size:10;" ><o:p> </o:p>Why the triangles are stupid? The corporate ones, they are always stupid. For them ledgers and balance sheets are more important . For them an idea or innovation is a mere step to bigger bank balance to an already huge one. Their only question to a problem is, will solving this problem yield me the dollars.<o:p></o:p></span></p> <p class="MsoNormal"><span style=";font-family:Arial;font-size:10;" ><o:p> </o:p>The problem. We create problems in order to simplify our lives. We tend to simplify the way we sit, eat, communicate, and a whole lot of other things that leads to problems. Why do we do that? May be because we think, and may be because, as Isaac Asimov writes in his book “A guide to the Universe”, humans are super monkey. <o:p></o:p></span></p> <p class="MsoNormal"><span style=";font-family:Arial;font-size:10;" ><o:p> </o:p>So, my purpose of this blog is </span><span style=";font-family:Arial;font-size:10;" >to </span><span style=";font-family:Arial;font-size:10;" >write about my thought on the triangle concept which may not necessary revolve around the ones I have mentioned above and would also be writing about my views on other blogs or articles relation to the stupid triangle concept.<o:p></o:p></span></p>shttp://www.blogger.com/profile/17241092287766729780noreply@blogger.com1