tag:blogger.com,1999:blog-294624512008-04-11T14:34:25.557+05:30A-DobbyVivekhttp://www.blogger.com/profile/09990763077941665358noreply@blogger.comBlogger15125tag:blogger.com,1999:blog-29462451.post-2656232503682608852008-03-21T14:58:00.004+05:302008-03-21T15:03:36.301+05:30Vector Thrusting in FerrariOk, the post title is misleading, just so that my absurd effort sounds cool. What I did was make a fat matchstick-vector-ferrari-fan. I know, sheesh.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_KyN6caG3JG4/R-OA4oPFi_I/AAAAAAAAAbs/ipHZytXxzz8/s1600-h/Ferrari.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp0.blogger.com/_KyN6caG3JG4/R-OA4oPFi_I/AAAAAAAAAbs/ipHZytXxzz8/s400/Ferrari.png" alt="" id="BLOGGER_PHOTO_ID_5180125706767928306" border="0" /></a><br />This is a gross devaluation of Illustrator's capabilities, and also of my potential. ;) I used to think that the pen tool was a pain, but then I saw this really old video on youtube, in which John Warnock demonstrated the capabilities of one of the earliest versions of Illustrator, and the ease with which he used it caught my fancy. As you can see, I have caught on!<br /><br />More vector art thrusting its way through to you in the future!<div class="blogger-post-footer">Helloi</div>Vivekhttp://www.blogger.com/profile/09990763077941665358noreply@blogger.comtag:blogger.com,1999:blog-29462451.post-15282026867986652092007-12-10T12:25:00.000+05:302007-12-10T12:31:54.277+05:30Error Code: 0xC0150002 : The application failed to initialize properly. Click on Ok to terminate the application.I was in the process of making a few changes to a DLL, and whenever I ran the application on any machine other than mine with this new DLL, I got the message : "Error Code: 0xC0150002 : The application failed to initialize properly. Click on Ok to terminate the application.". Now, this error message isn't very nicely documented, even by Microsoft. In fact, their website claims this error is caused because of some Office 2003 -WinXP Pro combination. My error has nothing to do with that.<br /><br />I eventually found a pointer at one of the forums (due credit, but I can't find the website anymore!). So how to fix it. Do this:<br />Open both the old DLL that works, and the new DLL you made that refuses to port onto another computer in Visual Studio. Expand the tree and see the Manifest Version. Are they different? Voila! (Assuming they are ofcourse). The problem is that when your runtime MS DLL's (msvcrt family) belong to a VS installation other than yours, your new manifest embedded in the new DLL is unable to use them, hence the crash.<br /><br />Solution? Recompile the DLL on a machine with the same manifest/VS version. Try again.<br /><br />Hope this helps!<div class="blogger-post-footer">Helloi</div>Vivekhttp://www.blogger.com/profile/09990763077941665358noreply@blogger.comtag:blogger.com,1999:blog-29462451.post-40726150112839370002007-12-07T18:04:00.000+05:302007-12-07T18:08:26.975+05:30Tech Ouch!<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,47,0" height="500" width="365"> Pain...!!<br />How ruthless. I will never ever Bank with db in by life!<br />btw, this is the first document I am embedding from Adobe Share. Some of my previous posts describe the python methods to connect to this site. Here I showcase what it is really capable of. Flash and PDF together!.<br /><param name="movie" value="https://share.adobe.com/adc/flex/mpt.swf"> <param name="quality" value="high"> <param name="wmode" value="transparent"> <param name="flashvars" value="ext=pdf&docId=7c5abee6-a4c0-11dc-9065-89d3e7d227c4"> <embed src="https://share.adobe.com/adc/flex/mpt.swf" quality="high" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" wmode="transparent" flashvars="ext=pdf&docId=7c5abee6-a4c0-11dc-9065-89d3e7d227c4" height="600" width="565"></embed> </object><div class="blogger-post-footer">Helloi</div>Vivekhttp://www.blogger.com/profile/09990763077941665358noreply@blogger.comtag:blogger.com,1999:blog-29462451.post-20136285946720406932007-10-30T17:42:00.001+05:302007-10-30T17:49:41.045+05:30Connecting to Adobe Share using Python V2In the previous post about Python and Adobe Share, I explained the very basic step of communicating with the Share server and obtaining a Authorization token. The next step is to use this authorization token to start a session with the Share server. Lets start with the basics again, no explanations this time.<br /><br />1. Get the AuthToken<br /><span style="font-family:courier new;"></span><blockquote><span style="font-family:courier new;">import time, md5, httplib2, xml.dom.minidom, sys</span><br /><span style="font-family:courier new;">shared = "085960468662212c21417dce2e1XXXXX"</span><br /><span style="font-family:courier new;">calltime = str(int(time.time()))</span><br /><span style="font-family:courier new;">datastring = "POST /webservices/api/v1/auth/ apikey=fdc464509d733be99c30c6ccfacXXXXX calltime=" + calltime</span><br /><span style="font-family:courier new;">sig = (md5.new(datastring+shared).hexdigest())</span><br /><span style="font-family:courier new;">url = "https://api.share.adobe.com/webservices/api/v1/auth/?apikey=fdc464509d733be99c30c6ccfacXXXXX&calltime="+calltime +"&sig=" + sig</span><br /><span style="font-family:courier new;">bodydata = '<request><username>vkapoor@adobe.com</username><password>XXXXX</password></request>'</span><br /><span style="font-family:courier new;">http = httplib2.Http()</span><br /><span style="font-family:courier new;">response, content = http.request(url , method='POST', body=bodydata)</span><br /><span style="font-family:courier new;">Doc = xml.dom.minidom.parseString(content)</span><br /><span style="font-family:courier new;">L = Doc.getElementsByTagName("authtoken")</span><br /><span style="font-family:courier new;">authToken = str((L[0].childNodes)[0].data)</span></blockquote><span style="font-family:courier new;"></span><br /><br />2. At the end of this, <span style="font-family:Courier New;">authToken <span style="font-family:georgia;">should have the Authorization Token. Now use this to start a new session</span>.<br /><br /><blockquote>calltime = str(int(time.time()))<br />datastring = "POST /webservices/api/v1/sessions/ apikey=fdc464509d733be99c30c6ccfacXXXXX calltime=" + calltime<br />sig = (md5.new(datastring+shared).hexdigest())<br />url = "https://api.share.adobe.com/webservices/api/v1/sessions/?apikey=fdc464509d733be99c30c6ccfacXXXXX&calltime="+calltime +"&sig=" + sig<br />bodydata = '<request><authtoken>'+ authToken + '</authtoken></request>'<br />response, content = http.request(url , method='POST', body=bodydata)<br />Doc = xml.dom.minidom.parseString(content)<br />L = Doc.getElementsByTagName("sessionid")<br />sessionid = str((L[0].childNodes)[0].data)<br />L = Doc.getElementsByTagName("secret")<br />secret = str((L[0].childNodes)[0].data)<br />L = Doc.getElementsByTagName("name")<br />name = str((L[0].childNodes)[0].data)<br />L = Doc.getElementsByTagName("level")<br />level = str((L[0].childNodes)[0].data)</blockquote><br /><span style="font-family:georgia;">3. At the end of this, some relevant data, such as the SessionID, the new shared secret and other information is available in variables such as </span><span style="font-family:Courier New;"><span style="font-family:georgia;">sessionid, secret, name, level etc. Other information can be extracted conveniently using XML methods.</span><br /><span style="font-family:georgia;">Now, let us do something productive. Starting a session has no meaning if you can't do anything. So, just to prove that you can, I'll write a snippet that will list the contents of the root directory. Here goes..</span><br /><br /><blockquote>calltime = str(int(time.time()))<br />datastring = "GET /webservices/api/v1/dc/ apikey=fdc464509d733be99c30c6ccfacXXXXX calltime=" + calltime + " sessionid=" + sessionid<br />sig = (md5.new(datastring+secret).hexdigest())<br />url = "https://api.share.adobe.com/webservices/api/v1/dc/?apikey=fdc464509d733be99c30c6ccfacXXXXX&calltime="+calltime +"&sessionid=" + sessionid + "&sig=" + sig<br />response, content = http.request(url , method='GET')</blockquote><br /><br /><span style="font-family:georgia;">4.Parse the variable </span><span style="font-family:Courier New;"><span style="font-family:georgia;">content in order to get relevant information. If all goes well, it should have a list of files, or rather a tree of files in the root of your Share account.</span><br /><br /><span style="font-family:georgia;">Notice that we recalculate the </span><span style="font-family:Courier New;"><span style="font-family:georgia;">calltime before each new action. The Share server is ok as long as the calltimes are non decreasing. Also, in the last part, i.e. the directory listing, we use the new shared secret which is unique to a session.</span><br /><br /><span style="font-family:georgia;">This should get you started. I have used the Query String methods for all of these examples. I have reason to believe that if the Header methods are handled correctly, they should work too. I was not able to get the Header techniques to work, and I especially had doubts about the multipart upload techniques for uploading files. If anyone figures this out, I'd like to glance at the code.</span><br /><br /><span style="font-family:georgia;">I personally however gave up on using Python, and used the Java API provided by Adobe instead. That works like a dream to say the least, but I'd like to get this working too. Help!</span><br /></span></span></span></span><div class="blogger-post-footer">Helloi</div>Vivekhttp://www.blogger.com/profile/09990763077941665358noreply@blogger.comtag:blogger.com,1999:blog-29462451.post-37063670876179546812007-10-30T12:39:00.000+05:302007-10-30T12:54:41.893+05:30Ubuntu over Windows XP!!Installing linux on your machinge can be a difficult decision for most wanna-feel-like-geeks, especially when the laptop in question is owned not by them, but by their employer, and has elaborate encryption technologies in place at the BIOS level to prevent loss of information in case the laptop is lost. Yes, I'm not talking of a general dilemma, but of my predicament.<br /><br />Enter Microsoft Virtual PC. This sounded interesting. So much so that I initially tried installing the latest releases of Fedora and Ubuntu on it, without much luck. There weren't many articles on how to do this either. All the help I got was either for Ubuntu 6.06 or Fedora 5. So after a while I gave up.<br /><br />Yesterday I decided to lower my expectations and install the older version of Ubuntu Linux. It was a rather easy install, and most of my hardware worked like a dream. I had to manually install the soundcard, but the network and display were working fine anyway.<br /><br />I can't wait for someone to hack Leopard enough so that I can go ahead and install that too.. That will surely be fun. But till then, take a look at these lovely screenshots. This blog post is being written inside Ubuntu by the way, but I will eventually have to add the windows screen shot from windows itself, because I still haven't figured out the host system access from within the virtual machine.<br /><br />Next stop, VMWare.<br /><br />AHA!! The advantage of having 2 machines is that I could save on the non host and use the "Windows Share" connection from Ubuntu to access the screenshot. This thing is a dream. I remember the first time I tried to use Samba on Mandrake, I almost wanted to kill myself!<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_KyN6caG3JG4/RybbbffrYQI/AAAAAAAAAUA/lL144hzuDcE/s1600-h/Screenshot.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp0.blogger.com/_KyN6caG3JG4/RybbbffrYQI/AAAAAAAAAUA/lL144hzuDcE/s400/Screenshot.png" alt="" id="BLOGGER_PHOTO_ID_5127026491165204738" border="0" /></a><br /><div style="text-align: center;">From within Ubuntu<br /></div><br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_KyN6caG3JG4/RybbvvfrYRI/AAAAAAAAAUI/5xpX7-GhHsE/s1600-h/ubuntu.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp1.blogger.com/_KyN6caG3JG4/RybbvvfrYRI/AAAAAAAAAUI/5xpX7-GhHsE/s400/ubuntu.png" alt="" id="BLOGGER_PHOTO_ID_5127026839057555730" border="0" /></a><br /><div style="text-align: center;">From Windows XP<br /></div><br />So, entirely from within Ubuntu. My very first post :) And may I add, that I even saw a bit of Cheeni Kum on Ubuntu Today.. Funny things can bring excitement back in life!<div class="blogger-post-footer">Helloi</div>Vivekhttp://www.blogger.com/profile/09990763077941665358noreply@blogger.comtag:blogger.com,1999:blog-29462451.post-21404395231031605202007-10-20T23:35:00.000+05:302007-10-21T22:28:41.949+05:30Connecting to Adobe Share using PythonAdobe recently launched the Share Beta, a state of the art flash based file sharing and archiving solution. All of these services are headed in only one direction, the web. Also, there is an increasing desire to make connecting to these services easier. Adobe Share uses the RESTful paradigm to allow users to connect to the back end and communicate with the server, for automating tasks that would usually require user interaction.<br /><br />The Share forums currently provide links to API's for connecting to the service in Java and Action Script 3. I am not comfortable with either, and I wanted to use Python for this purpose, because it fits in well with my wider objective, and hence I can script everything in a single language. After hours of frantic searching, I wasn't able to find a decent tutorial on the RESTful methods in Python, leave alone Adobe Share specific help.<br /><br />So after much hard work, I was able to get the responce I wanted, and after several ugly monsters like<br /><blockquote>'BadSig'<br />'BadAuthQuery'</blockquote><br />and several others, I finally saw the light, and the server said:<br /><blockquote><br />'<response status="ok"><authtoken>2a5b93f2321a78172062219ab8ce3f25</authtoken></response>'</blockquote></blockquote><br /><br />aah.. isn't that pretty.... You will surely understand if you have been trying as hard as I had to. So this is the end of one (no not all, its not panacea, just a lil blog, whatdayaexpect!) of your woes. This post will describe the very basics of getting a AuthToken using the Adobe Share API from Python.<br /><br />So lets get started,<br />First things first, what all do you need over and above the standard Python installation? Only httplib2. (I use Python 2.5.1, and that seems to have everything else for this task anyway).<br /><br />Import all you need, and create the data string and signature as described in the Share API documentation:<br /><blockquote><br /><span style="font-size:85%;">>>> import time, md5, httplib2<br />>>> shared = "085960468662212c21417dce2e1XXXXX"<br />>>> datastring = "POST /webservices/api/v1/auth/ apikey=fdc464509d733be99c30c6ccfacXXXXX calltime=" + str(int(time.time()))<br />>>> datastring<br />'POST /webservices/api/v1/auth/ apikey=fdc464509d733be99c30c6ccfacXXXXX calltime=1192904962'<br />>>> sig = (md5.new(datastring+shared).hexdigest())<br />>>> url = "https://api.share.adobe.com/webservices/api/v1/auth/?apikey=fdc464509d733be99c30c6ccfacXXXXX&amp;calltime=1192904962&amp;sig=" + sig<br />>>> bodydata = '<request><username>vkapoor@adobe.com<password>XXXXXXX</password>'<br />>>> http = httplib2.Http()<br />>>> response, content = http.request(url , method='POST', body=bodydata)<br />>>> response<br />{'date': 'Sat, 20 Oct 2007 18:33:18 GMT', 'status': '200', 'content-length': '88', 'content-type': 'application/xml;charset=ISO-8859-1', 'server': 'Apache-Coyote/1.1'}<br />>>> content<br />'<response status="ok"><authtoken>156e799bf4cac31eee170c2116cf5646</authtoken></response>'<br /></blockquote><br /><br /></span>So, there. Thats the first step for establishing a connection with the Adobe Share server, using Python and the RESTful approach. I will soon update on setting up a session, and uploading a PDF using Python. Stay tuned..<div class="blogger-post-footer">Helloi</div>Vivekhttp://www.blogger.com/profile/09990763077941665358noreply@blogger.comtag:blogger.com,1999:blog-29462451.post-84606932333014547722007-06-17T14:09:00.000+05:302007-06-17T14:17:43.679+05:30Now thats new!Well, lets not talk about what I was downloading, but this was cute:<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_KyN6caG3JG4/RnT02S6LIqI/AAAAAAAAAK8/j1OxEYYH7e0/s1600-h/Hamster.gif"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_KyN6caG3JG4/RnT02S6LIqI/AAAAAAAAAK8/j1OxEYYH7e0/s400/Hamster.gif" alt="" id="BLOGGER_PHOTO_ID_5076951893579342498" border="0" /></a><br />Now, considering what Vista/XP do to my machines, I have reason to think they should come up with such messages to keep me from losing my cool :)<div class="blogger-post-footer">Helloi</div>Vivekhttp://www.blogger.com/profile/09990763077941665358noreply@blogger.comtag:blogger.com,1999:blog-29462451.post-21308297371138916732007-05-23T12:09:00.001+05:302007-07-30T09:09:29.460+05:30My first post from within Word 2007<span xmlns=""><p>Is this as geeky as it gets?? Wandering mind in a long workshop discovers amazing things. Can't figure out how to support images though. Will it upload directly to blogger?? I'll just add a little image for a test. May I add, that writing something in Word, will rarely get suspected as timepass in a meeting. Amazing idea. <span style="font-family:Wingdings;">J</span><br /> </p><p><br /> </p><p>Hope this image is visible.. It just occurred, that word is a much richer editor than the one blogger provides.. kool.. I hope it works without many glitches…</p><br />Ok. On request. Its not that complicated actually. Firstly, yes, it works on remotely hosted blogs, i.e. blogger, wordpress and likes. All you need to do click on the new Office button, go to publish>>blog and take it from there. You can manage multiple accounts and stuff. Another option for blogging is the windows live writer, which is free as of now, because the beta is available from the microsoft website, and because it is meant only for blogging, its a cleaner interface and probably a better option. Check here: http://download.microsoft.com/download/f/9/a/f9a19f2d-cec4-4a25-9b0b-eb9655ea7561/Writer.msi<br /></span><div class="blogger-post-footer">Helloi</div>Vivekhttp://www.blogger.com/profile/09990763077941665358noreply@blogger.comtag:blogger.com,1999:blog-29462451.post-74779333656225564832007-05-22T13:30:00.000+05:302007-05-22T13:38:18.438+05:30Problems with Intellisense???Microsoft probably thought that they were doing a great deal of good to the common programmer by adding Intellisense to the new Visiual Studio. Sure, it has auto expand capabilities, and probably a whole bunch of amazing geeky capabilities, but the bottom line is, it sucks!<br /><br />It slows down everything on the computer, visiual studio becomes unresponsive and crashes frequently and most people would rather get their work done rather than wonder what "Updating Intellisense..." actually achieves.<br /><br />Now, Microsoft actually takes the cake by not providing an option to disable this monster, even though it has known issues!! There is no preference that can turn this off, so you have to resort to the usual bit of hacking, and its rather simple in this case, no need to edit registry entries and increase your blood pressure.<br /><br />Just do this:<br /> <p class="MsoNormal"><b>rename or delete <vs>\VC\vcpackages\feacp.dll</b></p>and then restart Visual Studio. It wont take more than 5 minutes for you to notice the pleasant change. VS is all responsive and hardly hangs. In my opinion, even people who do not know what I am talking about should go ahead and make this change. If you really want to know what you will be losing out on, read <a href="http://msdn2.microsoft.com/en-us/library/ms379615%28vs.80%29.aspx">this</a>.<br /><br />Credits to the original idea <a href="http://forums.microsoft.com/msdn/showpost.aspx?postid=87409&siteid=1">here</a>.<div class="blogger-post-footer">Helloi</div>Vivekhttp://www.blogger.com/profile/09990763077941665358noreply@blogger.comtag:blogger.com,1999:blog-29462451.post-67631813373608315182007-03-11T09:21:00.000+05:302007-03-12T14:40:31.690+05:30Printing Part 1I joined my job in June 2006 at Adobe India. The very first day, I was told that I was part of the PostScript team. Now, someone joining Adobe expects to work on a product the entire world knows about. I had heard of PostScript, and for me, all it was was a free legal way of generating PDF Files. Apart from that, I had no idea what it did.<br /><br />I was always fascinated with PDF's too, they looked so cool on the screen! I never really considered them to be anything but a really convenient method of exchanging neat looking documents that can be printed nicely. So, what do PS and PDF have to do with the printing industry? (They must have something to do with it, because that's what the title says!) Ok, let me digress a little more. I'm sue all of us have seen a presentation on how a printer works. The entire mechanism, the rollers, the ink roller, the laser beams, the works. We also know that the laser beam hits the points where a dot is supposed to be placed, and the ink then sticks to that dot on the roller and eventually to the paper, where it is heated and 'printed'. Neat isn't it. Now, just out of inquisitiveness, how does the printer know what dot to mark and what not to mark?<br /><br />It never struck me that it would be impossible to actually send the Rasterised and halftoned images to the printer to print! You never think of these things do you. I'll tell you why. Lets take a 4 color laser printer (CMYK), capable of 1200 dpi, and a conservative page size of 11"x8". Thats 88 square inches x 1200 = 105600 dots per color. Now there are 4 colours, so x 4 = 422400. Well, that calculation assumes that the printer can either place a dot of ink, or no dot of ink. It has no control over the amount of ink it can place. In other words, what is the bit depth of the printer? Low end printers would be 1 bit, high end would be 8 bit. Lets just assume that we have a 8 bit printer. That means 8 bits of data for each colorant sample. Again, 422400 = 3379200. That many bits of data per page! Lets get that into familiar units. 3379200 / 1024*1024 = 3.22 MB.<br /><br />3.22 MB data to print one single sheet of paper! It may not sound like much, but think of a network printer catering to 100 people. Let alone that, if you want to print a 200 page document from your computer in 4 color, you need to transmit over 600 MB data! Thats not possible is it? That obviously does not happen! Well, in some kinds of printers, called GDI printers, it does happen that way. More flexible printers though, use page definition languages such as PostScript and PCL, which are vector capable languages, and the rasterization of these vectors is don on the printer itself. So now, you can actually specify or embed the font into the PS, specify the size and placement of the glyphs, and send a tiny file to the printer.<br /><br />In this series of blog posts, of which this is the first, I will take you through some of the basics of printing, and all the related stuff. Stay tuned..<br /><br />As a time-pass, if you really are interested, I recommend this :<br />Download 'Digital Editions' from labs.adobe.com. In the sample e-book library, you will find a book called 'Inside the Publishing Revolution : The Adobe Story'. Read that. Start <a href="http://labs.adobe.com/technologies/digitaleditions/">Here</a>.<div class="blogger-post-footer">Helloi</div>Vivekhttp://www.blogger.com/profile/09990763077941665358noreply@blogger.comtag:blogger.com,1999:blog-29462451.post-21690616457978155762007-02-28T10:57:00.000+05:302007-02-28T11:01:37.446+05:30You-Tube@HomeHave you ever wondered what technology powers You-Tube, Google Video, all the live streaming Videos on the net? Yes, it is Flash. Now Adobe lets you take that technology home for free. Download the Flash Media Encoder <a href="http://http//weblogs.macromedia.com/labs/archives/2007/02/adobe_flash_med.cfm">Here</a>, and get any of the free flash video players to view it. It is an amazing light weight option even for putting up videos in your intranet websites. Many Open Source CMS solutions like Joomla have free components that support flash video.<br /><br />Go ahead, enjoy the freebies.. :)<div class="blogger-post-footer">Helloi</div>Vivekhttp://www.blogger.com/profile/09990763077941665358noreply@blogger.comtag:blogger.com,1999:blog-29462451.post-30551333315966199972007-02-09T22:08:00.000+05:302007-02-09T22:16:25.438+05:30Image Tagging TimepassDon't feel like working? Never able to find graphics you are looking for in Google's image search? Purrfekt! Go right <a href="http://images.google.com/imagelabeler/">here</a> to waste your time! Google seems to be getting a difficult image processing task done for free, with eager enthusiasts willing to waste time and energy in labeling images. Where is the need to develop cutting edge algorithms that identify objects within images and tag them, when you have millions of idle human brains at your disposal.<br /><br />The concept is novel to say the least. You are paired with a random unknown partner, and both of you are shown a common image. You are supposed to type out whatever occurs to you when you see the image, and if any of these words match, the image is tagged with that label. Pretty safe and effective. Try it for yourself, its fun.<br /><br />I still don't know what I'm supposed to do with the points I've earned though.. Can I exchange them for lifesavers... anyone??<div class="blogger-post-footer">Helloi</div>Vivekhttp://www.blogger.com/profile/09990763077941665358noreply@blogger.comtag:blogger.com,1999:blog-29462451.post-41061105691182503022007-02-09T10:13:00.000+05:302007-02-09T10:47:02.310+05:30Naming Software (Or naming blog posts??)Most software companies pay no heed to giving interesting names to their software. Microsoft is probably the worst i'd say. Take 'Office' for example. How obvious is that? I still remember that in a quiz in Modern School, we were asked, "Which software made by Microsoft, is named after one of the buildings in their complex?". I believe I need to explain the general psyche of people taking part in these quizzes. There were free chocolates for being funny, and there was a particular hot chick of modern school sitting in the front row, who used to giggle when people gave funny answers. Do I need to elaborate?? I don't think so.<br />So, our unanimous decision was "Office". Unfortunately, the quiz master thought it was a good guess despite our honest intention of sounding funny, and as the girl didn't have a brain of her own, we didn't get any giggles either.<br /><br />The point to be noted is that, (well the answer was Outlook) companies can be pretty unadventurous with the christening of their software. Some companies fare a little better, like Adobe (I'm referring to the erstwhile Macromedia here). Most of their software have very hip and gen-x names. Flash, Shockwave, Flex, ColdFusion. The list is endless. However, none, I repeat none comes close to Ahead Software Inc. Does that ring any bells? Ever burnt a CD with Nero?<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_KyN6caG3JG4/RcwDhKmvEFI/AAAAAAAAACU/vKHGZD1gfKI/s1600-h/wallpaper_3_800x600.jpg"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://bp1.blogger.com/_KyN6caG3JG4/RcwDhKmvEFI/AAAAAAAAACU/vKHGZD1gfKI/s320/wallpaper_3_800x600.jpg" alt="" id="BLOGGER_PHOTO_ID_5029398752183390290" border="0" /></a>When we first realized the connection, we were spell bound to say the least. The name was so perfect, it had the perfect connotations, the ROM(e), the fiddle, the burning! It was so amazing that our instant reaction was to include this as a question in the upcoming Panache! (I have to add that we did feel like idiots when we saw that the Nero logo clearly shows the Colosseum on fire..), but we were impressed nevertheless..<br /><br />We seldom realize, that a thing as simple as the name of the software can be a great insight into the kind of people who worked on the software! The only vision I ever get of the people at Ahead Software is that of an Intelligent, fun-loving lot..<br /><br />So much for my visions of people at Microsoft!<br /><br />If you are still wondering what I am talking about, <a href="http://en.wikipedia.org/wiki/Nero">read this</a>...<div class="blogger-post-footer">Helloi</div>Vivekhttp://www.blogger.com/profile/09990763077941665358noreply@blogger.comtag:blogger.com,1999:blog-29462451.post-57270520360902470872007-02-06T12:28:00.000+05:302007-02-06T12:48:46.070+05:30Welcome Windows Vista!<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://vkapoor.com/images/vista.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 613px; height: 548px;" src="http://vkapoor.com/images/vista.jpg" alt="" border="0" /></a><div class="blogger-post-footer">Helloi</div>Vivekhttp://www.blogger.com/profile/09990763077941665358noreply@blogger.comtag:blogger.com,1999:blog-29462451.post-2142025278478187322007-01-31T21:17:00.000+05:302007-01-31T21:24:49.093+05:30Hello World!Very few things come to my mind when I just want to test something like a blog. Lorem Ipsum would probably be a good choice for a design guy, but this being a tech blog, "hello world!' seems to be the apt way to start. I don't plan to stop at this though. There will be a lot of interesting stuff that I will share here on this website.<br /><br />Just a little detail on what you can expect this website to offer. To start with, lots of interesting stuff about web-services. You can expect to find regular articles about flex, php, asp etc. In addition to these, I also intend to explain the world of printing in some detail. I will start with the basics, and gradually build up to more complex details.<br /><br />Any suggestions and criticism will be greatly appreciated.<div class="blogger-post-footer">Helloi</div>Vivekhttp://www.blogger.com/profile/09990763077941665358noreply@blogger.com