<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss'><id>tag:blogger.com,1999:blog-16056150</id><updated>2009-09-30T05:36:21.548-07:00</updated><title type='text'>Wired News</title><subtitle type='html'>Know News[Important]</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://wired-news.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default?start-index=26&amp;max-results=25'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>109</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-16056150.post-3837964468549532316</id><published>2008-10-22T12:00:00.000-07:00</published><updated>2008-10-22T12:02:25.267-07:00</updated><title type='text'>Hindustan Institute of Technology &amp; Management</title><content type='html'>It’s been almost a year now. I was busy with a lot of things all this while but Hindustan Institute of Technology &amp; Management(HITM) has been the most important one. This year, we (my family) started a new project - Hindustan Institute of Technology &amp; Management (HITM), an engineering college in the District Ambala, Haryana (India). Though it was always under the plans but then it materialized only this year.&lt;br /&gt;&lt;br /&gt;Presently, the college is offering B.Tech. course in 4 streams namely - Information Technology, Computer Science, Electronics and Mechanical with 60 seats per course with a total of 240 seats. Further, we are planning to start a management course as well by next year.&lt;br /&gt;&lt;br /&gt;We started the project around January’08 with the construction of the college and completed Phase I of the construction after 7 months by August’08. Soon after the college construction was completed, we started the first batch of the college. The first day of the college was quite an event with lot of students, parents, university officials and the press people. All the people who were present that day appreciated the college for its strong and stable infrastructure. The college is fully air-conditioned with 100% power backup, Wifi enabled campus with unlimited Internet, an extensive library with more than 6000 books and subscription to journals and magazines and Transportation facilities from/to neighbouring cities.&lt;br /&gt;&lt;br /&gt;For more information, have a look at the college website here: &lt;a href="http://www.hitmedu.com "&gt;http://www.hitmedu.com&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;On the whole, it will take us another 3 years to complete the construction of the college. It’s a long time but I guess that’s the pace of such projects.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-3837964468549532316?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/3837964468549532316'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/3837964468549532316'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2008/10/hindustan-institute-of-technology.html' title='Hindustan Institute of Technology &amp; Management'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-7699459207460714145</id><published>2008-01-09T09:56:00.001-08:00</published><updated>2008-01-17T08:44:42.676-08:00</updated><title type='text'>Configuration of Gmail on Gnus/Emacs (Ubuntu Gutsy)</title><content type='html'>I tried configuring Gnus/Emacs to send/receive mails through Gmail using IMAP/SMTP protocol on my Ubuntu-Gutsy Linux Box.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Emacs Version:&lt;/strong&gt; 22.1.1&lt;br /&gt;&lt;strong&gt;Gnus Version:&lt;/strong&gt; 5.11&lt;br /&gt;&lt;br /&gt;I performed the following steps:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;I had to install &lt;strong&gt;sendmail&lt;/strong&gt; and &lt;strong&gt;starttls&lt;/strong&gt; programs using &lt;strong&gt;apt-get&lt;/strong&gt; first and start &lt;strong&gt;sendmail&lt;/strong&gt; service.&lt;/li&gt;&lt;li&gt;&lt;br /&gt;Enable IMAP support for your Gmail account online as described here :&lt;br /&gt;&lt;a href="http://mail.google.com/support/bin/answer.py?answer=77695"&gt;http://mail.google.com/support/bin/answer.py?answer=77695&lt;/a&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;li&gt;Create a file named &lt;strong&gt;.gnus.el&lt;/strong&gt; in your home directory and copy the configuration as given below:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;;; Configuration of ~/.gnus.el&lt;br /&gt;&lt;/code&gt;&lt;code&gt;&lt;br /&gt;;; Customize the next three lines with your ISP information.&lt;br /&gt;(load "starttls")&lt;br /&gt;(load-library "smtpmail")&lt;br /&gt;&lt;/code&gt;&lt;code&gt;&lt;br /&gt;(setq user-mail-address "username@gmail.com")&lt;br /&gt;(setq user-full-name "User Name")&lt;br /&gt;&lt;/code&gt;&lt;code&gt;&lt;br /&gt;;; Configure incoming mail (IMAP)&lt;br /&gt;(setq gnus-select-method '(nnimap "gmail"&lt;br /&gt;                              (nnimap-address "imap.gmail.com")&lt;br /&gt;                              (nnimap-server-port 993)&lt;br /&gt;                              (nnimap-authinfo-file "~/.imap-authinfo")&lt;br /&gt;                              (nnimap-stream ssl)))&lt;br /&gt;&lt;/code&gt;&lt;code&gt;&lt;br /&gt;;; Configure outbound mail (SMTP)&lt;br /&gt;(setq smtpmail-starttls-credentials '(("smtp.gmail.com" 587 nil nil))&lt;br /&gt;  smtpmail-smtp-server "smtp.gmail.com"&lt;br /&gt;  smtpmail-default-smtp-server "smtp.gmail.com"&lt;br /&gt;  send-mail-function 'smtpmail-send-it&lt;br /&gt;  message-send-mail-function 'smtpmail-send-it&lt;br /&gt;  smtpmail-smtp-service 587&lt;br /&gt;  smtpmail-auth-credentials '(("smtp.gmail.com" 587 "username@gmail.com" nil))&lt;br /&gt;  smtpmail-debug-info t&lt;br /&gt;  smtpmail-debug-verb t&lt;br /&gt;)&lt;br /&gt;(setq smtpmail-local-domain nil)&lt;br /&gt;(setq gnus-permanently-visible-groups "gmail")&lt;br /&gt;(executable-find starttls-program)&lt;br /&gt;&lt;/code&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Create another file named &lt;strong&gt;.imap-authinfo&lt;/strong&gt; in your home directory with the following line:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;machine imap.gmail.com login username@gmail.com password my_password port 993&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Now, start Emacs, and type &lt;strong&gt;M-x gnus&lt;/strong&gt; to launch Gnus. Gnus should automatically check for email on Gmail.com. After a while, when gnus process completes it displays a list of subscribed mailboxes. By default, you are subscribed to &lt;strong&gt;nndoc+gnus-help:gnus-help&lt;/strong&gt; mailbox only.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;To add your Gmail INBOX and other Gmail Labels you need to add them as mailboxes. Type 'U' in the Gnus Group Buffer and type the name of the Gmail Label or type INBOX to subscribe that Label to Gnus. You can also use auto-completion feature here to list all labels.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Now, you should see the subscribed Mailboxes in the Groups buffer. You can press 'Enter' on any mailbox to read mails under that label.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;To send an email, type 'm'. You should get a buffer to send email. Remember here that it will prompt you to enter your password to send emails every time. If you wish to skip this step, change the value of &lt;strong&gt;smtpmail-auth-credentials&lt;/strong&gt; variable in &lt;strong&gt;.gnus.el&lt;/strong&gt; file you just created :&lt;br /&gt;&lt;br /&gt;&lt;code&gt;smtpmail-auth-credentials '(("smtp.gmail.com"  587  "username@gmail.com" "password"))&lt;/code&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;You can change the permissions on the file &lt;strong&gt;.gnus.el&lt;/strong&gt; and &lt;strong&gt;.imap-authinfo&lt;/strong&gt; to restrict the access to your username only.&lt;/li&gt;&lt;br /&gt;&lt;code&gt;chmod 700 ~/.gnus.el ~/.imap-authinfo&lt;/code&gt;&lt;/ul&gt;All the above steps must configure Emacs to send and receive email using Gmail successfully. Hope this helps!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-7699459207460714145?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='related' href='http://ankurjain.org/2008/01/09/configuration-of-gmail-on-gnusemacs-ubuntu-linux/' title='Configuration of Gmail on Gnus/Emacs (Ubuntu Gutsy)'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/7699459207460714145'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/7699459207460714145'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2008/01/configuration-of-gmail-on-gnusemacs_09.html' title='Configuration of Gmail on Gnus/Emacs (Ubuntu Gutsy)'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-3153184300800953815</id><published>2007-11-03T12:57:00.001-07:00</published><updated>2007-11-03T12:59:03.244-07:00</updated><title type='text'>Ubuntu Gutsy - Microphone Issues on Dell Inspiron 1520</title><content type='html'>&lt;p&gt;Please go through the previous &lt;a href="http://ankurjain.org/2007/10/09/ubuntu-feisty-installation-dell-inspiron-1520/"&gt;post&lt;/a&gt;, in case sound is not working correctly for you on Feisty/Gutsy. First you need to setup the sound card correctly.&lt;/p&gt; &lt;p&gt;I was facing problems with Internal Microphone on Ubuntu Feisty, so when Gutsy was released, I upgraded to it. Status did not change even after upgrading to Gutsy. Anyway, I tried reinstalling ALSA, but it did not help either. For Gutsy, there are not much different solutions available. So, I tried various settings in the Sound Mixer again. Finally, I got the Internal Microphone working. I used Audacity/Skype to test the microphone. Those facing the same issue with similar hardware (Sigmatel STAC9205), may try the same settings. It might help. Attached is the screenshot of the gnome-mixer settings that worked for me.&lt;/p&gt;&lt;a href="http://ankurjain.org/2007/11/03/ubuntu-gutsy-microphone-problem-on-dell-inspiron-1520/alsa-gnome-mixer-playback-tab/" rel="attachment wp-att-140" title="ALSA Gnome Mixer Playback Tab"&gt;&lt;img src="http://ankurjain.org/blog/wp-content/uploads/2007/11/playback.thumbnail.png" alt="ALSA Gnome Mixer Playback Tab" /&gt;&lt;/a&gt; &lt;a href="http://ankurjain.org/blog/wp-content/uploads/2007/11/recoding.thumbnail.png" rel="attachment wp-att-141" title="ALSA Gnome Mixer Recording Tab"&gt;&lt;img src="http://ankurjain.org/blog/wp-content/uploads/2007/11/recoding.thumbnail.png" alt="ALSA Gnome Mixer Recording Tab" /&gt;&lt;/a&gt; &lt;a href="http://ankurjain.org/blog/wp-content/uploads/2007/11/switches.thumbnail.png" rel="attachment wp-att-142" title="ALSA Gnome Mixer Switches Tab"&gt;&lt;img src="http://ankurjain.org/blog/wp-content/uploads/2007/11/switches.thumbnail.png" alt="ALSA Gnome Mixer Switches Tab" /&gt;&lt;/a&gt; &lt;a href="http://ankurjain.org/blog/wp-content/uploads/2007/11/options.thumbnail.png" rel="attachment wp-att-139" title="ALSA Gnome Mixer Options Tab"&gt;&lt;img src="http://ankurjain.org/blog/wp-content/uploads/2007/11/options.thumbnail.png" alt="ALSA Gnome Mixer Options Tab" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-3153184300800953815?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='related' href='http://ankurjain.org/2007/11/03/ubuntu-gutsy-microphone-problem-on-dell-inspiron-1520/' title='Ubuntu Gutsy - Microphone Issues on Dell Inspiron 1520'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/3153184300800953815'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/3153184300800953815'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2007/11/ubuntu-gutsy-microphone-issues-on-dell.html' title='Ubuntu Gutsy - Microphone Issues on Dell Inspiron 1520'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-6613497153644403850</id><published>2007-10-09T09:43:00.000-07:00</published><updated>2007-12-27T04:05:04.205-08:00</updated><title type='text'>Ubuntu Feisty Installation - Dell Inspiron 1520</title><content type='html'>&lt;p&gt;It’s been quite sometime that I installed Ubuntu 7.04 Feisty Fawn on Dell Inspiron 1520. My experience with this Ubuntu installation has been good and I have got Compiz Fusion working this time (something I could not do before).&lt;/p&gt; &lt;p&gt;Installation was slightly problematic with Feisty, since the Live CD did not boot at all. It failed after I pressed “Enter to Install” and I had to search for available solutions for this problem. I solved the problem by following the steps provided &lt;a href="http://ubuntuforums.org/showthread.php?t=517004"&gt;here&lt;/a&gt;. The workaround provided helped me out and I could boot using Live CD and installed Ubuntu Feisty subsequently. No problems after the boot process. Installation was simple and straightforward and completed in 18-20 minutes.&lt;/p&gt; &lt;p&gt;Now, since many essential features were missing, so first thing I had to do was to install those missing packages. So, I needed to update the packages list or apt-get should I say. But I did not choose apt-get, instead I selected Smart Package Manager this time. I have had a very good experience with smartpm previously, so decided to try it out this time on Ubuntu as well. I haven’t faced any problems till now, in fact I’m impressed with Smart Package Manager. I find it better since as per my experience, it resolves package dependencies better and I never faced any version conflicts which I faced otherwise with apt-get at times.&lt;/p&gt; &lt;p&gt;Here’s how you can configure smart package manager to add apt-get channels available in default sources.list file:&lt;/p&gt; &lt;p&gt;Issue all these smart commands as root.&lt;/p&gt; &lt;p&gt;&lt;code&gt;smart channel --edit&lt;/code&gt;&lt;/p&gt; &lt;p&gt;Now add the following repositories: &lt;/p&gt; &lt;p&gt;&lt;code&gt;&lt;br /&gt;[aptsync-a30ca3197e720a6180d50388c93162f8]&lt;br /&gt;type = apt-deb&lt;br /&gt;name = feisty - free non-free&lt;br /&gt;baseurl = http://packages.medibuntu.org/&lt;br /&gt;distribution = feisty&lt;br /&gt;components = free non-free&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;code&gt;&lt;br /&gt;[deb-sys]&lt;br /&gt;type = deb-sys&lt;br /&gt;name = DEB System&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;code&gt;&lt;br /&gt;[feisty-backports]&lt;br /&gt;type = apt-deb&lt;br /&gt;name = feisty - backports&lt;br /&gt;baseurl = http://in.archive.ubuntu.com/ubuntu/&lt;br /&gt;distribution = feisty-backports&lt;br /&gt;components = main restricted universe multiverse&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;code&gt;&lt;br /&gt;[feisty-main]&lt;br /&gt;type = apt-deb&lt;br /&gt;name = feisty - main&lt;br /&gt;baseurl = http://in.archive.ubuntu.com/ubuntu/&lt;br /&gt;distribution = feisty&lt;br /&gt;components = main restricted universe multiverse&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;code&gt;&lt;br /&gt;[feisty-security]&lt;br /&gt;type = apt-deb&lt;br /&gt;name = feisty - security&lt;br /&gt;baseurl = http://security.ubuntu.com/ubuntu&lt;br /&gt;distribution = feisty-security&lt;br /&gt;components = main restricted universe multiverse&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;code&gt;&lt;br /&gt;[feisty-updates]&lt;br /&gt;type = apt-deb&lt;br /&gt;name = feisty-updates&lt;br /&gt;baseurl = http://in.archive.ubuntu.com/ubuntu/&lt;br /&gt;distribution = feisty-updates&lt;br /&gt;components = main restricted universe multiverse&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;code&gt;&lt;br /&gt;[medibuntu]&lt;br /&gt;type = apt-deb&lt;br /&gt;name = medibuntu-updates&lt;br /&gt;baseurl = http://medibuntu.sos-sts.com/repo/&lt;br /&gt;distribution = feisty&lt;br /&gt;components = free non-free&lt;br /&gt;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;After adding all the sources, I updated smartpm using the following command:&lt;/p&gt; &lt;p&gt;&lt;code&gt;smart update&lt;/code&gt;&lt;/p&gt; &lt;p&gt;First, I installed envy to fetch the Nvidia Graphics Driver. Envy worked extremely smoothly and setup everything automatically without requiring any manual edit of xorg.conf file. So, I got the wide screen 1440×900 resolution setup correctly. Later, I used the Amaranth repository to setup Compiz Fusion on the system. But I had to remove the other 3D desktop packages like Desktop effects, beryl before that. Then I followed this &lt;a href="https://help.ubuntu.com/community/CompositeManager/CompizFusion"&gt;link&lt;/a&gt; to install the Compiz Fusion package and it worked without further issues. Here are some screen shots: &lt;a href="http://ankurjain.org/blog/wp-content/uploads/2007/10/dell_inspiron.png" title="Ubuntu Feisty Fawn Screenshot"&gt;Screenshot 1&lt;/a&gt;, &lt;a href="http://ankurjain.org/blog/wp-content/uploads/2007/10/screenshot.png" title="Dell Inspiron 1520 Windows screenshot on Ubuntu Feisty"&gt;Screenshot 2&lt;/a&gt;, &lt;a href="http://ankurjain.org/blog/wp-content/uploads/2007/10/dell_inspiron_ubuntu.png" title="3D Desktop Cube Ubuntu on Dell Inspiron 1520"&gt;Screenshot 3&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Smart worked well for the installation of other essential packages as well; you can refer this page for the list of essential packages like DVD support, Multimedia audio codecs, mplayer, banshee, flash plugin, java plugin, vlc, rar archives: &lt;a href="http://ubuntuguide.org/wiki/Ubuntu:Feisty"&gt;http://ubuntuguide.org&lt;/a&gt;&lt;/p&gt; &lt;p&gt;One problem that I noticed on Ubuntu Feisty is that I get less battery life for my laptop using the same settings (screen brightness, hdd activity) that I have on Windows Vista Premium. Another issues is the alsamixer, bluetooth and the microphone. Even when I plugged in the headphone, sound used to come through speakers, so I had to upgrade ALSA manually as instructed at this &lt;a href="https://help.ubuntu.com/community/HdaIntelSoundHowto"&gt;link&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Sound problem was resolved, but the bluetooth and microphone are still not working. Moreover, there is a problem with the power management functions. If the system goes into sleep mode, it does not resume, you get blank screen. I could not find any solution for this problem.&lt;/p&gt; &lt;p&gt;Otherwise, it’s a nice distribution over all.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-6613497153644403850?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='related' href='http://ankurjain.org/2007/10/09/ubuntu-feisty-installation-dell-inspiron-1520/' title='Ubuntu Feisty Installation - Dell Inspiron 1520'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/6613497153644403850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/6613497153644403850'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2007/10/ubuntu-feisty-installation-dell.html' title='Ubuntu Feisty Installation - Dell Inspiron 1520'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-5469639980285643822</id><published>2007-09-14T21:08:00.000-07:00</published><updated>2007-09-14T21:09:39.905-07:00</updated><title type='text'>Dell Inspiron 1520</title><content type='html'>&lt;p&gt;Yes! I bought a laptop for myself, the Dell Inspiron 1520 (Black). Must say, it’s quite a beauty with the matte finish. &lt;/p&gt; &lt;p style="text-align: center;"&gt;&lt;a href="http://ankurjain.org/blog/wp-content/uploads/2007/09/dell_insp1500.jpg" title="Dell Inspiron 1520"&gt;&lt;img src="http://ankurjain.org/blog/wp-content/uploads/2007/09/dell_insp1500.jpg" alt="Dell Inspiron 1520" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Though delivery time was a bit long (13 days), I got it finally with all the accessories as mentioned in the order, so no surprises. I bought the following configuration : &lt;/p&gt; &lt;ul&gt; Intel(R) Core(TM)2Duo Processor T5250 1.5Ghz 2MB Cache, 667Mhz FSB&lt;br /&gt;1 GB (2×512MB) DDR2 SDRAM&lt;br /&gt;15.4 Widescreen WXGA+ Display&lt;br /&gt;160 GB SATA HDD (5400 RPM)&lt;br /&gt;Nvidia(R) Geforce(TM) 8400M GS - 128MB GDDR2&lt;br /&gt;Integrated Sound Blaster Audigy Advanced HD Audio Software&lt;br /&gt;Dell Wireless 355 Bluetooth Module&lt;br /&gt;Intel Pro Wireless 3945 Dual Band 802.11a/g Wirless Mini Card&lt;br /&gt;Camera&lt;br /&gt;Dell (TM) Remote Control&lt;br /&gt;Internal 8X DVD+/-RW combination drive with dual layer write capabilities&lt;br /&gt;6-cell 53 WHr Lithium Ion Primary Battery&lt;/ul&gt; &lt;p&gt;Windows Vista (with Aero) runs fine, although I don’t see much difference between Vista and XP. There are some unrequired features that you may want to turn off. See this &lt;a href="http://mostlysavingmoney.com/2007/06/top-10-windows-vista-speed-tweaks/"&gt;link&lt;/a&gt; for some help.&lt;/p&gt; &lt;p&gt;All the hardware components, like Bluetooth, Camera, Touchpad, DVD Writer were configured properly. So, there were no glitches with the default installation. Speakers in the front performs well and battery performance is quite good as well.&lt;/p&gt; &lt;p&gt;But there are some other nuisances, I must say when you decide to change the partitioning, either reducing the size of C drive or installing another operating system. &lt;/p&gt; &lt;ul&gt;&lt;li&gt; I must say that partitioning scheme is crazy. I had 140-145 GB as one partition, C: for Windows Vista. Then there was one recovery partition taking around 10GB of space. And there is also a 2-3GB space allocated for Dell Media Direct. &lt;p&gt;Now, since I wanted to install Linux along with it, but I couldn’t due to this partitioning scheme. All these partitions were primary. So, I needed to delete a partition (basically C:) and repartition the whole system. Anyway, I had to do that. Installed Dell Media Direct also, but lost the recovery partition. &lt;/p&gt;&lt;/li&gt;&lt;li&gt;Hard Disk is another disappointment. It makes a irritating crackling sound already (typical Seagate HDD!). Though otherwise, it works fine. I kept the laptop running for 10-12 hrs, doesnt get too heated. Works fine absolutely except the irritating HDD noise. I think I need to get it replaced to a non-Seagate drive.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;The next step is to install Linux (Ubuntu most probably).&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-5469639980285643822?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/5469639980285643822'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/5469639980285643822'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2007/09/dell-inspiron-1520.html' title='Dell Inspiron 1520'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-7917754259421861678</id><published>2007-07-02T00:17:00.000-07:00</published><updated>2007-07-02T00:18:59.543-07:00</updated><title type='text'>DB2 decimal to varchar conversion issue : leading zeroes</title><content type='html'>&lt;div class="storycontent"&gt;Recently, I came across this problem, someone faced while casting a &lt;strong&gt;&lt;code&gt;decimal&lt;/code&gt;&lt;/strong&gt; datatype to &lt;strong&gt;&lt;code&gt;varchar &lt;/code&gt;&lt;/strong&gt;data type in DB2. &lt;p&gt;Here’s the link to the whole thread : &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.dbforums.com/showthread.php?p=2826205"&gt;db2– Decimal to Varchar without leading zeros&lt;/a&gt;&lt;/p&gt; &lt;p&gt;So, the idea is to replace the 0’s with spaces and convert them back to 0 with second replace. I’ve already explained the reason for this double-do for both &lt;strong&gt;&lt;code&gt;replace&lt;/code&gt;&lt;/strong&gt; and &lt;strong&gt;&lt;code&gt;rtrim/ltrim&lt;/code&gt;&lt;/strong&gt; functions instead of a single &lt;strong&gt;&lt;code&gt;trim&lt;/code&gt;&lt;/strong&gt;, &lt;strong&gt;&lt;code&gt;strip&lt;/code&gt;&lt;/strong&gt; functions.&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-7917754259421861678?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='related' href='http://www.dbforums.com/showthread.php?p=2826205' title='DB2 decimal to varchar conversion issue : leading zeroes'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/7917754259421861678'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/7917754259421861678'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2007/07/db2-decimal-to-varchar-conversion-issue.html' title='DB2 decimal to varchar conversion issue : leading zeroes'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-2406876296577019400</id><published>2007-03-09T02:40:00.000-08:00</published><updated>2007-04-17T02:46:32.612-07:00</updated><title type='text'>Targetized</title><content type='html'>After a period of 18 months approximately, I made first job switch of my career. I separated from my previous company - a IT Company (probably the biggest) to another big company, although in a different industry (Retail).&lt;br /&gt;&lt;br /&gt;Last working day was quite eventful. At office, I spent the whole day managing the separation process &amp; said good-bye to everyone. At home, all 3 of us (my 2 room-mates and myself) wished each other &lt;strong&gt;Good Luck&lt;/strong&gt;. One of my room-mates got a job, other one was going abroad. Next day, I left Pune for my home at Delhi and stayed there for a week before taking up my new job at Bangalore. I did nothing at home except relaxing and partying, that was the objective anyways.&lt;br /&gt;&lt;br /&gt;Next week I went to Bangalore and joined my new company.&lt;br /&gt;&lt;br /&gt;My job change was actually a Career Shift. I've changed my role from pure technical to that of a mixed one. My current role requires both technical skills as well as functional knowledge. It was a personal choice for me, so I took this decision. I wanted to gain business insight in my work so as to feel excited about it and my new role offered exactly same thing; so I didn't mind _relocation_ pain also.&lt;br /&gt;&lt;br /&gt;When I joined the new organization, I also observed the difference in working culture of a relatively smaller and non-IT organization with my previous company. Smaller organizations are less process oriented when compared to the big shots of Technology arena where you need to follow process for everything, right from requesting stationary to separation (except going to the loo - as mentioned by another professional from similar organization). Too much process-orientation is a pain especially when you don't achieve much benefit or efficiency from it. Processes are beneficial only when they are practically followed.&lt;br /&gt;&lt;br /&gt;Since it's not an IT organization, the objective here is not to achieve ultimate &amp; ace technical solutions. But to use technology to make accurate business decisions smartly. It makes sense for them since their primary goal is to conduct business efficiently rather than implementing latest technology solutions.&lt;br /&gt;&lt;br /&gt;I got started with my project work on the 3rd day. Since, it is a new field and role (requiring functional knowledge) for me, I'm having a tough time to learn the business concepts and processes. It's actually analyzing the business &amp;amp; helping in decision support. Even the technology is a bit different as I have to work here on a Data Warehouse whereas I worked as a PL/SQL Developer previously.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-2406876296577019400?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/2406876296577019400'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/2406876296577019400'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2007/03/targetized.html' title='Targetized'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-2602105471636996112</id><published>2007-02-24T05:46:00.000-08:00</published><updated>2007-03-06T05:48:27.191-08:00</updated><title type='text'>Oscars @ home</title><content type='html'>&lt;p&gt;Yes, I am feeling exactly this at the moment.&lt;/p&gt; &lt;p&gt;As I mentioned already in my last post, work pressure is not much these days at office so I started feeling a little too idle to spend time when you’re all alone in a new city. Moreover, there is not much to discover in and around Pune, or maybe I’m just not interested. I’ve already visited the city landmarks.&lt;/p&gt; &lt;p&gt;Then it came to my mind, let’s watch movies &amp; spend some quality time. Let me confess in advance that I’ve very little knowledge &amp;amp; exposure to movies. I know that doesn’t make me a lesser audience but I mentioned it just to make sure you’re not surprised about my selection, pick of movies.&lt;/p&gt; &lt;p&gt;Actually, I was thinking how to get information about a movie relating to its cast, plot, ratings, reviews &amp; other credentials. I stumbled upon these 4 major resources :&lt;/p&gt; &lt;ul&gt;&lt;li&gt;&lt;a href="http://www.imdb.com/"&gt;IMDB&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.rottentomatoes.com/"&gt;Rotten Tomatoes&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.metacritics.com/"&gt;MetaCritic.com&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.hollywood.com/"&gt;Hollywood.com&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Usually, I watch one movie in say 1-2 months, but now as I’ve got enough time; I watched a little more during this time, namely :&lt;/p&gt; &lt;ul&gt;&lt;li&gt;&lt;a href="http://www.erinbrockovich.com/home.html"&gt;Erin Brockovich&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://imdb.com/title/tt0100405/"&gt;Pretty Woman&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://imdb.com/title/tt0304415/"&gt;Mona Lisa Smile&lt;/a&gt;&lt;/li&gt;&lt;p&gt;[Well dont make opinions, I am just another fan of her]&lt;/p&gt;&lt;li&gt;&lt;a href="http://imdb.com/title/tt0105151/"&gt;The Player&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.eternalsunshine.com/"&gt;Eternal sunshine of the spotless mind&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://imdb.com/title/tt0116209/"&gt;The English Patient&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://imdb.com/title/tt0265208/"&gt;The Girl Next Door&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.imdb.com/title/tt0092005/"&gt;Stand By Me&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.21-grams.com/index.php"&gt;21 Grams&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.thenotebookmovie.com/"&gt;The Notebook&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://imdb.com/title/tt0389860/"&gt;Click&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.longestyard.com/longestyard.php"&gt;The Longest Yard&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Planning to watch some more, I’ve got - The Thin Red Line, The Shawshank Redemption, Children of Men, The Illusionist, The Pursuit of Happyness, Music and Lyrics.&lt;/p&gt; &lt;p&gt;I also found certain other resources offering movies’ scripts and subtitles as well - &lt;a href="http://www.divxmovies.com/subtitles/"&gt;DivXMovies&lt;/a&gt;, &lt;a href="http://www.imsdb.com/"&gt;IMSDB&lt;/a&gt; etc. which are quite useful when you’re a little more interested in a particular movie.&lt;/p&gt; &lt;p&gt;Any resource you feel is worthy to improve the experience of selecting or watching a movie, be it Reviews, Storyline, Cast, Subtitles or Scripts then please contribute. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-2602105471636996112?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/2602105471636996112'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/2602105471636996112'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2007/02/oscars-home.html' title='Oscars @ home'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-5933229802059482197</id><published>2007-01-28T22:04:00.000-08:00</published><updated>2007-02-02T22:05:15.176-08:00</updated><title type='text'>Pune Vol. 2</title><content type='html'>&lt;div class="contenttext"&gt;Being idle for quite a long time in my organization, I was offered my next assignment in Pune. Though I didn’t want to, but still I had to go. So on Jan 8th, 2007, I came back to Pune. Last time when I was here, I had a brief and not so nice time in Pune. &lt;p&gt;Anyways, I reached the official guest house after arriving in Pune and rushed back to the office immediately. I met the contact person in the office. By the grace of God, I got a desk here unlike my previous project where I worked for around 8-9 months without a desk. But then, it was still a minor issue there. After some initial frequent changes, I was finally assigned to a project. For the rest of week there was nothing to be done, as everyone was new to this project.&lt;/p&gt; &lt;p&gt;During the first weekend, I went out and looked for accommodation and other things, I needed to arrange. I couldn’t find much options near the Office. I moved around the city to re-discover the landmarks (according to me). Prabhat Lodge on J M Road, Garware Chowk, Kamath &amp; Prithvi restaurants near Kothrud, all of them still exist. Pune has not changed during last 15 months. Roads, Transport, Food options are same as before. I arranged the accommodation with help of a good college-time friend, thanks a ton to him. &lt;/p&gt; &lt;p&gt;I also visited M G Road and had Vada-Pao near J J Garden. Surprisingly, Vada-Pao didn’t taste bad this time &amp;amp; Lime Juice was just too good. Walking Plaza on M G Road is a nice concept followed on Sundays.&lt;/p&gt; &lt;p&gt;Another week passed on in office without much of activity, but during the weekend, I shifted to my flat and started setting up things. Though, I was alone, it was not a problem this time to set up. Mainly it’s a furnished flat and market is nearby; food is the only issue. Anyways, experiences cum adventures I’ve had at Bangalore were helping!&lt;/p&gt; &lt;p&gt;What’s more in store for me at Pune, I’m yet to discover. &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-5933229802059482197?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/5933229802059482197'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/5933229802059482197'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2007/01/pune-vol-2.html' title='Pune Vol. 2'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-533306800981939596</id><published>2006-12-25T05:06:00.000-08:00</published><updated>2007-01-17T22:43:33.979-08:00</updated><title type='text'>Reunion of Batch 1999, Ramjas School - Pusa Road</title><content type='html'>&lt;div class="storycontent"&gt;   &lt;p&gt;After a long time, due to sincere efforts of few enlightened a.k.a connected people (people in touch with old pals), Reunion of Batch 1999, Ramjas School - Pusa Road happened.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Time &amp; Venue &lt;/strong&gt;: Dec 17th, 2006 11 A.M. @ Cafe Coffee Day, Connaught Place - New Delhi&lt;/p&gt; &lt;p&gt;Well, I reached the venue quite late. Reason being, I was searching my wardrobe specifically for a Yellow pullover, which took me sometime. Although, experts from textile industry didn’t appreciate really; I guess they’re learning about the fashion trends &lt;img src="http://ankurjain.org/blog/wp-includes/images/smilies/icon_razz.gif" alt=":P" class="wp-smiley" /&gt; &lt;/p&gt; &lt;p&gt;Anyways, when I reached the venue I welcomed other late comers. Another surprise was the strength of this reunion, must say. Big round of applause for friends who organized this affair. I believe the attendance achieved was worth the ordeal for them.&lt;/p&gt; &lt;p&gt;People from all streams (Science, Commerce, Arts) were present. Since, not everyone knew everyone else, we all introduced ourselves. We discovered people coming mainly from IT industry (quite obvious), Textiles &amp;amp; Banking industry. Rest are doing their family/own business.&lt;/p&gt; &lt;p&gt;I met everyone although I didn’t know all of them well. But then that’s the reason for a reunion, so that person like me can benefit from it.&lt;/p&gt; &lt;p&gt;Thank you Sumita, Sherry for organizing the reunion.&lt;br /&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-533306800981939596?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/533306800981939596'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/533306800981939596'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2006/12/reunion-of-batch-1999-ramjas-school.html' title='Reunion of Batch 1999, Ramjas School - Pusa Road'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-4798490159316090395</id><published>2006-11-24T05:10:00.000-08:00</published><updated>2006-12-05T05:11:40.147-08:00</updated><title type='text'>Ubuntu 6.10 Edgy Installation</title><content type='html'>&lt;div class="storycontent"&gt;   &lt;p&gt;I installed ubuntu 6.10 using net-install method, and it was a no-problem installation.&lt;/p&gt; &lt;p&gt;After the initial installation, I’d to install several small packages for essential features like MP3 support, jre &amp; flash-plugin for firefox, mplayer. I followed the instructions at the link : &lt;a href="http://ubuntuguide.org/wiki/Ubuntu_Edgy"&gt;&lt;strong&gt;http://ubuntuguide.org/wiki/Ubuntu_Edgy&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;The link provides all the information required to do all such configuration/setup tasks. But I had 2 problem relating to keyboard and sound card.&lt;/p&gt; &lt;p&gt;The keyboard was not working properly, as in some of the keys like ” and ‘ did not work properly. I’d to use the following command :&lt;/p&gt; &lt;p&gt; &lt;code&gt;&lt;strong&gt;sudo dpkg-reconfigure xserver-xorg&lt;/strong&gt;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;and change the keyboard configuration. I removed all the customizations displayed by the configuration script.&lt;/p&gt; &lt;p&gt;The other problem was that of sound card. I could access the sound card as root; but not as a non-root user. I resolved the problem by changing the permissions of the non-root user as explained below :&lt;/p&gt; &lt;p&gt;Go to : &lt;code&gt;&lt;strong&gt;System-&gt;Administration-&gt;Users and Groups&lt;/strong&gt;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;Here select the non-root User and Click Properties. In the User Privileges Section:&lt;/p&gt; &lt;p&gt;Check the following :&lt;br /&gt;&lt;code&gt;&lt;strong&gt;Use audio devices&lt;br /&gt;Use CD-ROM drives&lt;/strong&gt;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;After that when I restarted Gnome; both keyboard, sound problems were resolved.&lt;/p&gt; &lt;p&gt;For performance enhancement I used prelink and added it to daily cron. Steps are mentioned at the following link:&lt;/p&gt; &lt;p&gt; &lt;a href="http://ubuntuforums.org/showthread.php?t=1971"&gt;&lt;strong&gt;http://ubuntuforums.org/showthread.php?t=1971&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Ubuntu 6.10 is no doubt a great product. But I’m yet to install/test Mandriva One &lt;img src="http://ankurjain.org/blog/wp-includes/images/smilies/icon_wink.gif" alt=";)" class="wp-smiley" /&gt; &lt;/p&gt;  &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-4798490159316090395?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/4798490159316090395'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/4798490159316090395'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2006/12/ubuntu-610-edgy-installation.html' title='Ubuntu 6.10 Edgy Installation'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-860710399803303911</id><published>2006-10-10T05:12:00.000-07:00</published><updated>2006-12-05T05:13:03.875-08:00</updated><title type='text'>Oracle Indexes</title><content type='html'>&lt;div class="storycontent"&gt;Indexes are optional data structures associated with Database tables. Indexes are logically &amp; physically independent of the data in the associated table. They are independent database objects created to reduce disk I/O &amp;amp; speed up execution of SQL statements on a table. We can create many indexes on a table given that each index points to different column (in case of a single column) or unique combination of columns from a table.  &lt;p&gt;All Indexes offer complementary performance functionalities based on their structure:&lt;/p&gt; &lt;p&gt;&lt;strong&gt;B-Tree indexes :&lt;/strong&gt; B-Tree Indexes are stored as a conventional binary data structure in the database. Each branch node contains a key prefix to make a direction between two keys. Each Leaf Node is at same depth from the branch node and contain complete key value for each row &amp; ROWID.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Features :&lt;/strong&gt;&lt;/p&gt; &lt;ul&gt;&lt;li&gt;All leaf blocks of the tree are at same depth, resulting same performance for retrieval of any record from the indexed table.&lt;/li&gt;&lt;li&gt;B-Trees are stay balanced automatically.&lt;/li&gt;&lt;li&gt;Excellent performance is achieved for wide range of queries and are generally suitable for both small &amp;amp; large sized tables without performance degradation.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;Syntax :&lt;/strong&gt; &lt;/p&gt; &lt;p&gt; &lt;code&gt;CREATE INDEX last_name_idx ON students (last_name);&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Bitmap indexes :&lt;/strong&gt; Bitmap Indexes are space efficient indexes that represent trade-off between Disk I/O and CPU usage. A bitmap value is stored for each key value instead of a list of ROWIDs. Each bitmap corresponds to a possible ROWID. A mapping function returns actual ROWID at runtime in the form of a Row-ID list, and these ROWID values are directly used to access the data row. So, there is a trade-off between space (using compressed indexes) and CPU usage (for processing decompression).&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Features :&lt;/strong&gt;&lt;/p&gt; &lt;ul&gt;&lt;li&gt;Bitmap indexes are generally used in data warehouses for executing bulk data operations.&lt;/li&gt;&lt;li&gt;They are space efficient, but need higher CPU usage in comparison to B-Tree Indexes.&lt;/li&gt;&lt;li&gt;Bitmap indexes are not suitable for OLTP applications with large number of concurrent operations modifying individual rows of data. They are efficient in querying large data.&lt;/li&gt;&lt;li&gt; Bitmap indexes are not useful when performing comparison operations, instead use them for logical operations on data (viz. AND, OR, NOT) or equality queries.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;Syntax :&lt;/strong&gt; &lt;/p&gt; &lt;p&gt; &lt;code&gt;CREATE BITMAP INDEX last_name_idx ON students (last_name);&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Bitmap Join indexes :&lt;/strong&gt; As the name suggests, Bitmap join indexes are bitmap indexes defined using an equi-join condition between two or more tables. In bitmap-join index, indexed values comes from one table (Fact table) but bitmaps point to another table (Dimension table). Usually implemented in a data warehousing environment, they have similar features to bitmap indexes. Additionally, following considerations must be taken into account :&lt;/p&gt; &lt;ul&gt;&lt;li&gt;Bitmap-join indexes take much more time to build than a conventional bitmap index for a join is performed and bitmap value is generated.&lt;/li&gt;&lt;li&gt;Bitmap-join indexes should be applied on tables frequently used in tandem (using joins) with each other.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;Syntax :&lt;/strong&gt;&lt;/p&gt; &lt;p&gt; &lt;code&gt;CREATE BITMAP INDEX last_name_idx ON students (math.marks) WHERE students.pk = math.fk;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;br /&gt;Index-Organized Tables :&lt;/strong&gt; An index organized table has a storage organization that is different from a conventional (heap-organized) table whose data is stored as an unordered collection. Data for an index organized table is stored in a B-Tree index structure in a primary key sorted manner. Along with the primary key column data, it stores the values for the non-key columns as well. &lt;/p&gt; &lt;p&gt;&lt;strong&gt;Features :&lt;/strong&gt;&lt;/p&gt; &lt;ul&gt;&lt;li&gt;Access to rows is defined using logical ROWID.&lt;/li&gt;&lt;li&gt;Full-Index returns all rows.&lt;/li&gt;&lt;li&gt; Avoid additional block fetch for accessing non-key columns’ data.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;Syntax :&lt;/strong&gt; &lt;/p&gt; &lt;p&gt;  &lt;code&gt;CREATE TABLE students (&lt;/code&gt;&lt;br /&gt;        &lt;code&gt;   rollno number,&lt;/code&gt;&lt;br /&gt; &lt;code&gt; first_name varchar2(20),&lt;/code&gt;&lt;br /&gt; &lt;code&gt; last_name varchar2(20),&lt;/code&gt;&lt;br /&gt;         &lt;code&gt; CONSTRAINT pk_stud_iot_index PRIMARY KEY (rollno) )&lt;/code&gt;&lt;br /&gt;  &lt;code&gt; ORGANIZATION index &lt;/code&gt;&lt;br /&gt; &lt;code&gt; TABLESPACE spc_example_ts_01 &lt;/code&gt;&lt;br /&gt;         &lt;code&gt; PCTHRESHOLD 20 INCLUDING last_name; &lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;br /&gt;Function based indexes :&lt;/strong&gt; Function based indexes are based on functions, expressions that involve one or more columns in the table being indexed. A value of the function/expression is calculated and stored as the value for the index. They can be stored either as a B-Tree index or a bitmap index.&lt;br /&gt;&lt;strong&gt;&lt;br /&gt;Features :&lt;/strong&gt;&lt;/p&gt; &lt;ul&gt;&lt;li&gt;Function based indexes are beneficial for evaluating queries that involve functions in WHERE clauses. Example :&lt;/li&gt;&lt;p&gt; &lt;code&gt;SELECT * FROM students WHERE substr(stud_name, 1, 5) = "PETER";&lt;/code&gt;&lt;/p&gt;&lt;li&gt;It’s easy &amp; provides immediate values for expressions.&lt;/li&gt;&lt;li&gt;It provides additional functionality with little cost, if expensive functions/expressions need to be evaluated regularly from the indexed table.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;Syntax :&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;  &lt;code&gt;CREATE INDEX fb_last_name_idx on students (UPPER(last_name));&lt;/code&gt; &lt;/p&gt;  &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-860710399803303911?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/860710399803303911'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/860710399803303911'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2006/10/oracle-indexes.html' title='Oracle Indexes'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-115740751217548071</id><published>2006-09-04T15:04:00.000-07:00</published><updated>2006-09-04T15:05:12.246-07:00</updated><title type='text'>Oracle Collections</title><content type='html'>&lt;div class="storycontent"&gt;   &lt;p&gt;&lt;strong&gt;PL/SQL Collections&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Index-by tables (Associative Arrays)&lt;/strong&gt;: They are arrays with the only difference that we can use numbers, string literals for subscript values. Associative Arrays are sets of key-value pairs, where key can be an integer or a string. There is no limitation on the size of Associative Arrays.&lt;/p&gt; &lt;p&gt;Syntax: TYPE &lt;code&gt;type_name&lt;/code&gt; IS TABLE OF &lt;code&gt;element_type&lt;/code&gt; [NOT NULL] INDEX BY [BINARY_INTEGER | PLS_INTEGER | VARCHAR2 (size_limit)] ;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Nested Tables&lt;/strong&gt;: They are single dimensional, array-like tables, that can hold any number of elements inside another database table and can be manipulated by SQL as other database objects.&lt;/p&gt; &lt;p&gt;Syntax: TYPE &lt;code&gt;type_name&lt;/code&gt; IS TABLE OF &lt;code&gt;element_type&lt;/code&gt; [NOT NULL];&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Varying Arrays&lt;/strong&gt;: As the name suggests, varrays (Varying Arrays) are fixed length arrays that use sequential numbers as subscripts. varrays need to be dense and we cannot remove/delete individual elements from the array. Length is defined at design time and can be manipulated at runtime subject to maximum length defined. They are suitable in cases where all elements in the array are accessed in sequence.&lt;/p&gt; &lt;p&gt;Syntax: TYPE &lt;code&gt;type_name&lt;/code&gt; IS [VARRAY | VARYING ARRAY] (size_limit) OF &lt;code&gt;element_type&lt;/code&gt; [NOT NULL];&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Using PL/SQL Collections in SQL statements&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;NESTED TABLE&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;code&gt;CREATE TYPE Courseslist AS TABLE OF VARCHAR2(50);&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;code&gt;CREATE TABLE student as OBJECT (&lt;br /&gt;roll_no NUMBER(2),&lt;br /&gt;name VARCHAR2(20),&lt;br /&gt;courses Courseslist)&lt;br /&gt;NESTED TABLE courses STORE AS courses_tab;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;VARRAY&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;code&gt;CREATE TYPE Courseslist AS VARRAY(50) OF VARCHAR2(20);&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;code&gt;CREATE TABLE student (&lt;br /&gt;roll_no NUMBER(2),&lt;br /&gt;name VARCHAR2(20),&lt;br /&gt;courses Courseslist);&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;USING COLLECTIONS IN SQL&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;code&gt;DECLARE&lt;br /&gt;TYPE Courseslist is TABLE OF VARCHAR2(20);&lt;br /&gt;TYPE Courseslist2 is VARRAY(40) OF VARCHAR2(20);&lt;br /&gt;my_courses Courseslist;&lt;br /&gt;my_courses2 Courseslist2;&lt;br /&gt;BEGIN&lt;br /&gt;my_courses := Courseslist(’English’, ‘Mathematics’, ‘Science’);&lt;br /&gt;my_courses2 := Courseslist2(’English’, ‘Mathematics’, ‘Science’);&lt;br /&gt;INSERT INTO student values(12, ‘Ankur’, Courseslist(’English’, ‘Mathematics’, ‘Science’));&lt;br /&gt;END;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Manipulating Individual Elements in Collections&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Using subqueries within &lt;strong&gt;TABLE&lt;/strong&gt; operator we can extract varrays and Nested tables from containing table and execute INSERT, UPDATE and DELETE operations.&lt;/p&gt; &lt;p&gt;Syntax:&lt;/p&gt; &lt;p&gt;&lt;code&gt;BEGIN&lt;br /&gt;INSERT INTO TABLE (SELECT courses FROM student where roll_no=2) VALUES (’German’);&lt;br /&gt;DELETE TABLE (SELECT courses FROM student where roll_no = 1) WHERE course_strength &lt; 5;&lt;br /&gt;END;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;USING COLLECTION METHODS&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;EXISTS&lt;/strong&gt; - Check if an element exists in the collection.&lt;br /&gt;Syntax : &lt;code&gt;IF courses.EXISTS(i) THEN courses(i) = new_course; END IF;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;COUNT&lt;/strong&gt; - Count the elements in collection&lt;br /&gt;Syntax : &lt;code&gt;IF courses.COUNT &gt; 20 THEN...&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;LIMIT&lt;/strong&gt; - Check the Maximum Size of a collection&lt;br /&gt;Syntax: &lt;code&gt;IF new_courses.COUNT &lt;&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;FIRST and LAST&lt;/strong&gt; - Retrieve the FIRST and LAST element from collection&lt;br /&gt;Syntax: &lt;code&gt;IF courses.FIRST = courses.LAST THEN ...&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;PRIOR and NEXT&lt;/strong&gt; - Retrieve Previous and Next element of an index in collection.&lt;br /&gt;Syntax: &lt;code&gt;courses(i) = courses.NEXT(courses.PRIOR(i));&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;EXTEND&lt;/strong&gt; - Append a null element at the end of collection.&lt;br /&gt;&lt;strong&gt;EXTEND (n)&lt;/strong&gt; - Append n null elements to the collection.&lt;br /&gt;&lt;strong&gt;EXTEND (n,m)&lt;/strong&gt; - Append n copies of element m to the collection.&lt;br /&gt;Syntax: &lt;code&gt;courses.EXTEND(2,1)&lt;/code&gt; : Appends 2 copies of 1st element of courses collection.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;TRIM&lt;/strong&gt; - Remove the last element from a collection.&lt;br /&gt;&lt;strong&gt;TRIM(n)&lt;/strong&gt; - Remove n elements from the end of a collection.&lt;br /&gt;Syntax: &lt;code&gt;courses.TRIM(5) &lt;/code&gt;: Remove last 5 elements from courses collection.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;DELETE&lt;/strong&gt; - Delete all elements from a collection&lt;br /&gt;&lt;strong&gt;DELETE(n)&lt;/strong&gt; - Delete nth element from an associative array with numeric key or a nested table. If key is string in Associative Array, element corresponding to the key value is deleted. If n is null, DELETE(n) does nothing.&lt;br /&gt;&lt;strong&gt;DELETE(m, n)&lt;/strong&gt; - DELETE elements in the range m-n from an associative array or nested table.&lt;/p&gt; &lt;p&gt;Varrays are dense, therefore, individual elements cannot be deleted from Varrays.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;BULK BINDING&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Assigning of values to PL/SQL variables in SQL statements is called binding. Use &lt;strong&gt;FORALL&lt;/strong&gt; statement for bulk-bind input operations before sending them to SQL engine. It improves performance by minimizing context switching between SQL Engine and PL/SQL Engine and passing whole collections to &lt;strong&gt;SQL ENGINE&lt;/strong&gt; at a time during execution.&lt;/p&gt; &lt;p&gt;Syntax:&lt;/p&gt; &lt;p&gt;&lt;code&gt;DECLARE&lt;br /&gt;TYPE NumList is VARRAY(20) OF NUMBER;&lt;br /&gt;courses NumList := NumList(10, 20, 30);&lt;br /&gt;BEGIN&lt;br /&gt;FORALL i in courses.FIRST..courses.LAST&lt;br /&gt;DELETE FROM student where course_id = courses(i);&lt;br /&gt;END;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;We can redefine the length of loop to execute the &lt;strong&gt;FORALL&lt;/strong&gt; statement selectively. We may count number of rows affected, exceptions occurred in &lt;strong&gt;FORALL&lt;/strong&gt; statement using &lt;strong&gt;SQL%BULK_ROWCOUNT, SQL%BULK_EXCEPTIONS&lt;/strong&gt; attributes after the end of the loop.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;BULK COLLECT&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;We use &lt;strong&gt;BULK COLLECT&lt;/strong&gt; to bulk-bind output collections before returning to PL/SQL Engine as so to improve the performance, in a similar way, we used &lt;strong&gt;FORALL&lt;/strong&gt; statement.&lt;/p&gt; &lt;p&gt;Syntax: &lt;code&gt;SELECT courses BULK COLLECT INTO my_courses FROM student;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;We can also use &lt;strong&gt;BULK COLLECT&lt;/strong&gt; with cursors.&lt;/p&gt; &lt;p&gt;Syntax:&lt;/p&gt; &lt;p&gt;&lt;code&gt;BEGIN&lt;br /&gt;OPEN c1;&lt;br /&gt;FETCH c1 BULK COLLECT INTO my_courses;&lt;br /&gt;END;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;LIMIT&lt;/strong&gt; clause to limit the rows fetched for a &lt;strong&gt;BULK FETCH&lt;/strong&gt; Operation&lt;/p&gt; &lt;p&gt;Syntax:&lt;/p&gt; &lt;p&gt;&lt;code&gt;BEGIN&lt;br /&gt;OPEN c1;&lt;br /&gt;FETCH c1 BULK COLLECT INTO my_courses LIMIT 10;&lt;br /&gt;END;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;RETURNING INTO Clause&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;We can use &lt;strong&gt;RETURNING INTO&lt;/strong&gt; clause to retrieve DML results into a collection.&lt;/p&gt; &lt;p&gt;Syntax:&lt;/p&gt; &lt;p&gt;&lt;code&gt;BEGIN&lt;br /&gt;DELETE FROM student WHERE marks &lt; 50;&lt;br /&gt;RETURNING courses BULK COLLECT INTO my_courses;&lt;br /&gt;END;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;We can use Host Arrays with Bulk Binds for output and input, as they are the most effective way to pass collections between database server and clients.&lt;/p&gt; &lt;p&gt;Syntax:&lt;/p&gt; &lt;p&gt;&lt;code&gt;BEGIN&lt;br /&gt;FORALL i in :lower .. :upper&lt;br /&gt;DELETE FROM student WHERE roll_no := roll(i);&lt;br /&gt;END;&lt;/code&gt;&lt;/p&gt;  &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-115740751217548071?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/115740751217548071'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/115740751217548071'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2006/09/oracle-collections.html' title='Oracle Collections'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-115636311779078902</id><published>2006-08-23T12:57:00.000-07:00</published><updated>2006-08-23T12:58:37.793-07:00</updated><title type='text'>Sites We Cant Live Without</title><content type='html'>&lt;div class="contenttext"&gt; &lt;p&gt;Recently, I came across the &lt;a href="http://www.time.com/"&gt;Time.com&lt;/a&gt;’s list of &lt;a href="http://www.time.com/time/business/article/0,8599,1222769,00.html"&gt;25 sites, We Can’t Live Without&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;I read it till the end to discover the new websites, I might be unaware of. I thought so because being a software professional, I spend much of my time daily browsing Internet. Not to my surprise, I came across quite a few websites, I had not heard of. More so, may be because I don’t need the services offered by them like one that’s selling shoes and accessories. But there were some websites, I was happy to browse.&lt;/p&gt; &lt;p&gt;One of them is &lt;a href="http://craigslist.org/"&gt;Craiglist&lt;/a&gt;, it’s more like Yellow Pages cum Free Advertisements that are bundled for free alongwith the Newspapers. I was surprised to see a separate section for Bangalore and that too quite an active one.&lt;/p&gt; &lt;p&gt;Others in the list were mainly News-Related Websites or portals like &lt;a href="http://yahoo.com/"&gt;Yahoo&lt;/a&gt;, &lt;a href="http://msn.com/"&gt;MSN&lt;/a&gt; &amp; &lt;a href="http://aol.com/"&gt;AOL&lt;/a&gt;. Though they are not exactly comparable in terms of size and content, but that’s a broad category I’m putting them into.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.drudgereport.com/"&gt;Drudge Report&lt;/a&gt;, &lt;a href="http://www.factcheck.org/"&gt;Factcheck.org&lt;/a&gt;, &lt;a href="http://www.npr.org/"&gt;National Public Radio&lt;/a&gt; and &lt;a href="http://www.theonion.com/"&gt;The Onion&lt;/a&gt; are the ones, which are mainly meant for reading news. Out of all of them, I found Drude Report quite unique. It’s like Bookmark folder in your browser, with links to almost all popular news websites and some other hyperlinks to the Breaking News of the day.&lt;/p&gt; &lt;p&gt;Other than them, one of the interesting website, I came across is &lt;a href="http://www.netflix.com/"&gt;Netflix.com&lt;/a&gt; It’s an online movie rental website, with more than 65,000 titles - Classics to new releases. It offers free shipping, no late fees and free trial for new customers. Ultimate treat for movie buffs. A clean interface to browse the movie titles is appealing and little background about the movies is quite informative. A rating mechanism or a link to IMDB for that particular title would have been great &lt;img src="http://ankurjain.org/blog/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /&gt;  But I think the other website Rotten Tomatoes fills in that gap.&lt;/p&gt; &lt;p&gt;Last category of websites was shopping websites like &lt;a href="http://www.shopzilla.com/"&gt;Shopzilla&lt;/a&gt; and &lt;a href="http://www.zappos.com/welcome.zhtml?0723"&gt;Zappos&lt;/a&gt;. Shopzilla has quite a vast variety of products from different stores, zappos offers accessories mainly like shoes, handbags and apparels. Both of them are quite okay, as you can rate them after comparing the deals offered by them.&lt;/p&gt; &lt;p&gt;Then, there were the giants like Amazon, Google, Yahoo etc. everyone knows, use and of course, we can’t live WITHOUT any one of them. In the end, here is a list of sites, I can’t live without - &lt;a href="http://www.amazon.com/"&gt;Amazon&lt;/a&gt;, &lt;a href="http://www.google.com/"&gt;Google&lt;/a&gt;, &lt;a href="http://www.yahoo.com/"&gt;Yahoo!&lt;/a&gt;, &lt;a href="http://wikipedia.org/"&gt;Wikipedia&lt;/a&gt;, &lt;a href="http://www.blogger.com/"&gt;Blogger&lt;/a&gt;, &lt;a href="http://news.google.com/"&gt;Google News&lt;/a&gt;, &lt;a href="http://espn.go.com/"&gt;ESPN&lt;/a&gt;, &lt;a href="http://ebay.com/"&gt;Ebay&lt;/a&gt;, &lt;a href="http://flickr.com/"&gt;Flickr&lt;/a&gt;, &lt;a href="http://www.apple.com/trailers/"&gt;Apple Movie Trailers&lt;/a&gt; and &lt;a href="http://imdb.com/"&gt;The Internet Movie Database&lt;/a&gt;. &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-115636311779078902?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='related' href='http://ankurjain.org/blog/2006/08/23/sites-we-cant-live-without/' title='Sites We Cant Live Without'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/115636311779078902'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/115636311779078902'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2006/08/sites-we-cant-live-without.html' title='Sites We Cant Live Without'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-115514763273258965</id><published>2006-08-09T11:19:00.000-07:00</published><updated>2006-08-23T13:15:36.860-07:00</updated><title type='text'>Lyceum Installation</title><content type='html'>&lt;div class="contenttext"&gt; &lt;p&gt;Lyceum is an extension of the popular Wordpress blogging software. While Wordpress is a single user blogging software, Lyceum is a multiple users blogging software. Under early development, read about it &lt;a href="http://lyceum.ibiblio.org/"&gt;here&lt;/a&gt;&lt;/p&gt; &lt;p&gt;I tried installing it on my Windows XP system, running Apache 2.0.59, PHP 4.4.3 &amp; MySQL 3.23.42 and faced quite some problems, so thought to blog about it.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Installation Steps&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Download, Install and configure Apache, MySQL and PHP on your Windows Machine. Download and Installation should not be a problem. For configuration, you may follow these links:&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.thesitewizard.com/archive/php4install.shtml"&gt;http://www.thesitewizard.com/archive/php4install.shtml&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.dmxzone.com/ShowDetail.asp?NewsId=6452"&gt;http://www.dmxzone.com/ShowDetail.asp?NewsId=6452&lt;/a&gt;&lt;/p&gt; &lt;p&gt;After you’ve configured all the above 3 components, download Lyceum source from &lt;a href="http://lyceum.ibiblio.org/downloads"&gt;here&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Extract the source and place it under your DocumentRoot (&lt;doc_root&gt;). You should have the following directory structure.&lt;/doc_root&gt;&lt;/p&gt; &lt;pre&gt; &lt;doc_root&gt;/lyceum&lt;br /&gt;+  /dev&lt;br /&gt;|  /doc&lt;br /&gt;|  /src&lt;br /&gt;|    + /bin&lt;br /&gt;|    | /config&lt;br /&gt;|    | /installation&lt;br /&gt;|    | /lib&lt;br /&gt;|    + /lyceum&lt;br /&gt;+   /tests&lt;br /&gt;&lt;/doc_root&gt;&lt;/pre&gt; &lt;p&gt;Before starting the installation verify the Apache configuration first. You must have mod_rewrite module enabled in your Web Server Configuration. Also in the &lt;strong&gt;&lt;directory&gt;&lt;/directory&gt;&lt;/strong&gt; configuration part of your Apache configuration file, you must set the AllowOverride directive to “All”; that is, “&lt;strong&gt;AllowOverride All&lt;/strong&gt;”&lt;/p&gt; &lt;p&gt;Now, create a database in your MySQL server for lyceum as lyceum does not create the database itself.&lt;br /&gt;&lt;strong&gt;SQL&lt;/strong&gt; : mysql&gt;CREATE DATABASE lyceum;&lt;/p&gt; &lt;p&gt;In case you are using MySQL &lt;&gt;/lyceum/src/installation/) accordingly to remove the ENGINE directives from SQL statements.&lt;/p&gt; &lt;p&gt;Modify wp-config-sample.php (&lt;doc_root&gt;/lyceum/src/config/) to create wp-config.php with modifications to following fields: &lt;/doc_root&gt;&lt;/p&gt; &lt;p&gt;    &lt;strong&gt;DB_NAME&lt;/strong&gt; : Name of the Database you’ve created in MySQL.&lt;br /&gt;  &lt;strong&gt;DB_USER&lt;/strong&gt; : Database User Name&lt;br /&gt;  &lt;strong&gt;DB_PASSWORD&lt;/strong&gt; : Password for the specified Database User Name.&lt;br /&gt;  &lt;strong&gt;DB_HOST&lt;/strong&gt; : Server Name / Addresss (’localhost’ in case of local installation)&lt;br /&gt;  &lt;strong&gt;WEBROOT&lt;/strong&gt; : Location of /lyceum/src/lyceum on the server (Directory where portal.php is placed. &lt;strong&gt;Note:&lt;/strong&gt; ‘no trailing slash after the path)&lt;br /&gt;  &lt;strong&gt;MAINDOMAIN&lt;/strong&gt; : 127.0.0.1 ( For local installation. &lt;strong&gt;Note:&lt;/strong&gt; ‘localhost’ will not work)&lt;/p&gt; &lt;p&gt;Start the installation from your web browser using the URL : &lt;strong&gt;&amp;lt;server_address&amp;gt;/&amp;lt;webroot&amp;gt;/wp-admin/install.php&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;It should work fine. Comment if you face any issues. &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-115514763273258965?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='related' href='http://ankurjain.org/blog/2006/08/09/lyceum-installation/' title='Lyceum Installation'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/115514763273258965'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/115514763273258965'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2006/08/lyceum-installation.html' title='Lyceum Installation'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-115460027622927196</id><published>2006-08-03T03:17:00.000-07:00</published><updated>2006-08-03T03:17:56.240-07:00</updated><title type='text'>Single File Format</title><content type='html'>Recently, I read this article, where in the Author has imagined interoperability of all files some way; where all possible file formats could be represented in a standard/single format, so as to ease the process of file editing/creating and parsing.&lt;br /&gt;&lt;br /&gt;Read it &lt;a href="http://www.dhruv19280.com/myblog/?p=86"&gt;here&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-115460027622927196?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/115460027622927196'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/115460027622927196'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2006/08/single-file-format.html' title='Single File Format'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-115451267772513425</id><published>2006-06-12T02:57:00.000-07:00</published><updated>2006-08-02T02:57:57.746-07:00</updated><title type='text'>Oracle Joins</title><content type='html'>&lt;div class="postentry"&gt;&lt;strong&gt;Definition / Concept&lt;/strong&gt; &lt;p&gt;If we need to retrieve data from more than one table we use JOINs. A join is a query, used to retrieve data from more than one table based on JOIN condition (Note: Same table can referenced more than once).&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Conditions&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;In SQL terms, Join occurs when we specify more than one table in the FROM clause of the SELECT statement. Additionally, we also specify a condition in the WHERE clause to specify JOIN condition in the SELECT statement. Now, JOINs are conditions to join/compare two tables’ data retrieved from the selected tables’ columns based on JOIN Condition. Oracle combines the rows’ data to compare with other tables’ rows and evaulate the JOIN condition for TRUE/FALSE.&lt;/p&gt; &lt;p&gt;We need to qualify columns having same name with table names/aliases to avoid ambiguity errors, for joins can be extended to multiple tables. In case of multiple joins extending to more than 2 tables, let’s say 3 for example, we create a recordset based on 1st join between 1st two tables &amp; join the resulting recordset with 3rd table using 2nd Join.&lt;/p&gt; &lt;pre&gt;Table 1 +&lt;br /&gt;        |&lt;br /&gt;      (JOIN)---&gt;Recordset I +&lt;br /&gt;        |                   |&lt;br /&gt;Table 2 +                   |&lt;br /&gt;                          (JOIN)--- Final Recordset&lt;br /&gt;                            |&lt;br /&gt;                            |&lt;br /&gt;                            +&lt;br /&gt;                          Table 3&lt;br /&gt;&lt;/pre&gt; &lt;p&gt;Now, we’ve understood what are joins, their need &amp; application, let’s see what are the different types of JOINs&lt;br /&gt;available.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;SIMPLE JOIN/INNER JOIN/EQUALITY JOIN/EQUIJOIN&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;All the above terms refer the same JOIN type. Let’s call them INNER JOIN for our reference. Inner Join have equality operator as the JOIN condition. So, INNER JOIN returns only those rows from two tables that have same data for the specified columns.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;/p&gt; &lt;pre&gt;+--------+              +---------+&lt;br /&gt;|   ID   |              |   ID    |&lt;br /&gt;|  NAME  |              | SALARY  |&lt;br /&gt;|  AGE   |              |         |&lt;br /&gt;|--------|              |---------|&lt;br /&gt;|EMPLOYEE|              | PAYROLL |&lt;br /&gt;+--------+              +---------+&lt;br /&gt;&lt;/pre&gt; &lt;p&gt;We need to extract the salary of an employee from the payroll table. So, a INNER JOIN shall be created between EMPLOYEE&lt;br /&gt;&amp; PAYROLL table, using ID columns from the two tables.&lt;/p&gt; &lt;p&gt;&lt;code&gt;SELECT employee.id, employee.name, payroll.salary&lt;br /&gt;FROM employee, payroll&lt;br /&gt;WHERE employee.id = payroll.id;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;SELF JOIN&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;If we compare the data of a table with itself, we create a self join. I’ll give here a classical example of employees &amp; managers. Suppose, we need to know the name of employees’ manager from the employee table, we’ll create a self join. For example purpose, I modify the EMPLOYEE table.&lt;/p&gt; &lt;pre&gt;+--------+&lt;br /&gt;|   ID   |&lt;br /&gt;|  NAME  |&lt;br /&gt;|  AGE   |&lt;br /&gt;| MGR_ID |&lt;br /&gt;|--------|&lt;br /&gt;|EMPLOYEE|&lt;br /&gt;+--------+&lt;br /&gt;&lt;/pre&gt; &lt;p&gt;&lt;code&gt;SELECT e1.name EMPLOYEE, e2.name MANAGER&lt;br /&gt;FROM employee e1, employee e2&lt;br /&gt;WHERE e1.mgr_id = e2.id;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;CARTESIAN PRODUCT&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;If there is no comparison condition specified in a JOIN condition, a cartesian product is returned. In such a case, every row in a table is joined with every row in the other table of the JOIN. Let’s say, if there are 3 rows in Ist table &amp; 4 rows in the IInd table, 12 rows (3×4) would be produced.&lt;/p&gt; &lt;pre&gt;+--------+              +---------+&lt;br /&gt;|   ID   |              |   ID    |&lt;br /&gt;|  NAME  |              | SALARY  |&lt;br /&gt;|  AGE   |              |         |&lt;br /&gt;|--------|              |---------|&lt;br /&gt;|EMPLOYEE|              | PAYROLL |&lt;br /&gt;+--------+              +---------+&lt;br /&gt;&lt;/pre&gt; &lt;p&gt;&lt;code&gt;SELECT employee.id, payroll.salary&lt;br /&gt;FROM employee, payroll&lt;br /&gt;WHERE employee.name LIKE 'A%';&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;NATURAL JOIN&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;In a NATURAL JOIN all columns with same names &amp; datatype are joined from both tables. Here, we need to qualify the column name by table name or alias. All rows matching with the same column data are retrieved.&lt;/p&gt; &lt;pre&gt;+--------+              +---------+&lt;br /&gt;|   ID   |              |   ID    |&lt;br /&gt;|  NAME  |              | SALARY  |&lt;br /&gt;|  AGE   |              |         |&lt;br /&gt;|--------|              |---------|&lt;br /&gt;|EMPLOYEE|              | PAYROLL |&lt;br /&gt;+--------+              +---------+&lt;br /&gt;&lt;/pre&gt; &lt;p&gt;&lt;code&gt;SELECT id, name, salary&lt;br /&gt;FROM employee NATURAL JOIN payroll;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;OUTER JOIN&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Till now, all joins we’ve discussed retrieve all matching records from both tables. But sometimes, there is a situation when we also need to retrieve non-matching records from either one or both tables. For retrieving such non-matching records, we create OUTER JOINs. There are 3 type of OUTER JOINs based on from which side of the JOIN Condition we extract the non-matching records. We assume the following structure for our examples:&lt;/p&gt; &lt;pre&gt;+--------+              +---------+&lt;br /&gt;|   ID   |              |         |&lt;br /&gt;|  NAME  |              |   ID    |&lt;br /&gt;|  AGE   |              |  SALARY |&lt;br /&gt;| MGR_ID |              |         |&lt;br /&gt;|--------|              |---------|&lt;br /&gt;|EMPLOYEE|              | PAYROLL |&lt;br /&gt;+--------+              +---------+&lt;br /&gt;&lt;/pre&gt; &lt;p&gt;&lt;strong&gt;RIGHT OUTER JOIN &lt;/strong&gt;&lt;/p&gt; &lt;p&gt;As the name suggests, we extract non-matching records from the table mentioned on the right hand side of the JOIN condition. So, all the matching records from two tables, as well as non-matching records from the 2nd table (on right hand) are retrieved. NULL values are replaced for the non-existing values for columns extracted from table on the right hand side in non-matching rows.&lt;/p&gt; &lt;p&gt;&lt;code&gt;SELECT e.id, p.salary&lt;br /&gt;FROM employee e, payroll p&lt;br /&gt;WHERE e.id = p.id (+);&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;LEFT OUTER JOIN&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;In this JOIN, we extract non-matching records from the table mentioned on the left hand side of the JOIN condition in addition to the matching records. NULL value is displayed for the columns extracted from table on the left hand side in the non-matching rows.&lt;/p&gt; &lt;p&gt;&lt;code&gt;SELECT e.id, p.salary&lt;br /&gt;FROM employee e, payroll p&lt;br /&gt;WHERE e.id (+) = p.id;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;FULL OUTER JOIN&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;In case of a full outer join, we extract matching records from both tables specified in JOIN condition, as well as non-matching records from both tables. Actually to create FULL OUTER JOIN, a UNION set is generated from both LEFT OUTER JOIN &amp; RIGHT OUTER JOIN. NULL values are displayed for non-existing records of the other table in each non-matching row of either table.&lt;/p&gt; &lt;p&gt;&lt;code&gt;SELECT e.id, p.salary&lt;br /&gt;FROM employee e, payroll p&lt;br /&gt;WHERE e.id = p.id (+)&lt;br /&gt;UNION&lt;br /&gt;SELECT e.id, p.salary&lt;br /&gt;FROM employee e, payroll p&lt;br /&gt;WHERE e.id (+) = p.id;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt;&lt;/p&gt; &lt;ul&gt;&lt;li&gt;SQL statements provided in the post were tested on Oracle 8 version only. Natural Joins don’t exist on Oracle 8&lt;/li&gt;&lt;li&gt;ANSI syntax has not been covered here.&lt;/li&gt;&lt;/ul&gt;     &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-115451267772513425?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/115451267772513425'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/115451267772513425'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2006/06/oracle-joins_12.html' title='Oracle Joins'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-114984245888463810</id><published>2006-06-09T01:40:00.000-07:00</published><updated>2006-06-09T01:40:58.886-07:00</updated><title type='text'>Google Spreadsheets</title><content type='html'>Google is launching web-based spreadsheet application called &lt;a href="http://spreadsheets.google.com/" target="_blank"&gt;Google Spreadsheets&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Still under beta test, requiring invites to try out this new application; nothing much can be said about the application &amp; its future as of now. But, as I was going through various news articles, people are already claiming that Google is seriously competing with Microsoft by launching this spreadsheet program. In my opinion, it’s just small view of a bigger vision.&lt;br /&gt;&lt;br /&gt;For, I believe it’s not just about Google taking on Microsoft or any other XYZ Co., but what Google is trying to achieve is reducing the dependance of the users on an operating system largely.&lt;br /&gt;&lt;br /&gt;When we observe the recent moves made by Google, we observe that Google launched &lt;a href="http://gmail.com/" target="_blank"&gt;Email&lt;/a&gt;, &lt;a href="http://talk.google.com/" target="_blank"&gt;Instant Messaging&lt;/a&gt;, &lt;a href="http://calendar.google.com/" target="_blank"&gt;Calendar&lt;/a&gt; etc and now Google Spreadsheets, a spreadsheet application. The straight &amp;amp; obvious advantage of all such applications is availability on the web, so no matter where you are, you’ve access to your information everytime; no more dependancy on the personal desktop PC, that is. Whenever you need to search, share files; you can use Google Search, email/invite people &amp; share the files.&lt;br /&gt;&lt;br /&gt;The only skepticism would be the usability of such applications, as they are web based &amp;amp; security of the information. Usability I would define, how responsive the application is while the user is working on it. Well, a web based application is not that responsive in comparison to a desktop based application, but largely all such applications are usable as most of them are javascript based, which gets downloaded once the application is accessed through the Web Browser.&lt;br /&gt;&lt;br /&gt;Regarding the security of the data, it’s as secure/insecure that your email account is. Since, it’s password protected, we can say the data is safe/secure till the time you’ve chosen a medium-to-high strength password. But then, most of the desktop pc’s are also not completely safe. It’s a debatable topic, for people also doubt the security/integrity of the provider of such applications.&lt;br /&gt;&lt;br /&gt;So, I observe that Google is not competing with Microsoft by launching another Operating System, but they’re eliminating/diminishing the role of the OS itself for the users by offering web based applications &amp; I agree that such approach is right &amp;amp; smart.&lt;br /&gt;&lt;br /&gt;It’s hitting the market perfectly with every application it has launched. Now, all these developments could be labelled as Google killing Microsoft or killing similar desktop applications viz. OpenOffice Calc alike.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-114984245888463810?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='related' href='http://ankurjain.org/blog/2006/06/07/google-spreadsheets/' title='Google Spreadsheets'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/114984245888463810'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/114984245888463810'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2006/06/google-spreadsheets.html' title='Google Spreadsheets'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-114984239451672559</id><published>2006-06-09T01:38:00.000-07:00</published><updated>2006-06-09T01:39:54.530-07:00</updated><title type='text'>Get this tool for switching people from IE to Firefox</title><content type='html'>A group of four full-time political activists have developed a portal to encourage Internet Explorer users to adopt Firefox Web Browser. They’ve launched their website: &lt;a href="http://explorerdestroyer.com/" target="_blank"&gt;ExplorerDestroyer.com&lt;/a&gt; as an aggressive strategy to promote Firefox amongst Internet Explorer Users, as Internet Explorer is still the most popular Web Browser.&lt;br /&gt;&lt;br /&gt;The group states : “Firefox is one of the most important software applications in the world because it can play a big part in determining the future of the web. It is crucial that an open-source, standards-based web browser becomes the most popular browser, and Firefox has a shot at being that. It’s the best product, and its popularity is climbing, thanks to amazing efforts by the &lt;a href="http://mozilla.org/" target="_blank"&gt;Mozilla Foundation&lt;/a&gt;, the &lt;a href="http://spreadfirefox.org/" target="_blank"&gt;SpreadFirefox.org&lt;/a&gt; juggernaut, and many others.”&lt;br /&gt;&lt;br /&gt;Apart from talking about the advantages of Firefox, they are promoting the use of Firefox, by advertising the Google Adsense program that pays $1 for each new Firefox user you refer. Also, they are offering ready-made code snippet on the home page that will display ExplorerDestroyer Button to promote use of Firefox on blogging sites.&lt;br /&gt;&lt;br /&gt;The site announces “Your Mission - Get Under 50″ mission to reduce the number of Internet Explorer hits to less than 50 percent of all browser accesses &amp;amp; advocate the usage of splash screens advertising Firefox.&lt;br /&gt;&lt;br /&gt;The group has also launched another website : &lt;a href="http://killbillsbrowser.com/" target="_blank"&gt;killbillsbrowser.com&lt;/a&gt;. It’s a parody site with witty jokes about Internet Explorer nuisances, at the same time convincing people to switch to Firefox.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-114984239451672559?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='related' href='http://ankurjain.org/blog/2006/04/27/get-this-tool-for-switching-people-from-ie-to-firefox/' title='Get this tool for switching people from IE to Firefox'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/114984239451672559'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/114984239451672559'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2006/06/get-this-tool-for-switching-people.html' title='Get this tool for switching people from IE to Firefox'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-114594514052725273</id><published>2006-04-24T23:04:00.000-07:00</published><updated>2006-04-24T23:05:40.546-07:00</updated><title type='text'>Microsoft Internet Explorer 7 Beta 2 update</title><content type='html'>Microsoft released a new test release of Internet Explorer, the market leadingWeb browser facing stiff competition from smaller players like Firefox &amp;amp; Opera lately.&lt;br /&gt;&lt;br /&gt;The new beta, available Tuesday for free download to English-language customers, includes fixes for problems that were causing Internet Explorer 7 to stop working.With the previous test version, the most common problems reported involved banking and news sites, in part because of security changes.&lt;br /&gt;&lt;br /&gt;The new beta release is targeted at technology enthusiasts, after earlier versions of the browser primarily catered towards developers of websites and online applications.&lt;br /&gt;Improving security can be tricky since any changes can cause legitimate Web sites to stop working, frustrating users.&lt;br /&gt;&lt;br /&gt;“We want to get them to start using the product and get us some feedback,” Margaret Cobb, group product manager for Internet Explorer at Microsoft told vnunet.com. “We still have a few months before we release publicly and we want to make this the best experience possible.”&lt;br /&gt;Microsoft also added more guidance to help people using IE’s new browser tab functions, which let a user view more than one Web site from within one window, using multiple “tabs.”&lt;br /&gt;&lt;br /&gt;Microsoft also unveiled a new website where users can download so-called Internet Explorer Add-ons. The page is meant to increase the visibility of third party applications that build on top of the browser. Add-ons for the current version of the browser for instance enable a tabbed browsing capability for the software.&lt;br /&gt;&lt;br /&gt;This is Microsoft’s third beta of Internet Explorer 7 made available to the general public, and Hachamovitch said there are plans for one more. The new version comes amid growing competition from browsers such as Firefox, which has long offered functions such as tabbed browsing.&lt;br /&gt;&lt;br /&gt;The final version of Internet Explorer 7 is expected to be released in the second half of this year, around the time a version of Microsoft’s new Windows operating system is expected to be available for business users.&lt;br /&gt;&lt;a href="http://www.microsoft.com/ie"&gt;http://www.microsoft.com/ie&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-114594514052725273?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='related' href='http://ankurjain.org/blog/2006/04/25/microsoft-internet-explorer-7-beta-2-update/' title='Microsoft Internet Explorer 7 Beta 2 update'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/114594514052725273'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/114594514052725273'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2006/04/microsoft-internet-explorer-7-beta-2.html' title='Microsoft Internet Explorer 7 Beta 2 update'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-114527321141800044</id><published>2006-04-17T04:25:00.000-07:00</published><updated>2006-04-17T04:26:51.440-07:00</updated><title type='text'>Microsoft Developing Photo Search</title><content type='html'>&lt;div class="storycontent"&gt;Xie, a researcher for the &lt;a target="_blank" href="http://research.microsoft.com/wsm/"&gt;Web Search and Mining&lt;/a&gt; group within  &lt;a target="_blank" href="http://research.microsoft.com/aboutmsr/labs/asia/default.aspx"&gt;Microsoft Research Asia&lt;/a&gt;, is working on technology called Photo2Search, which is designed to provide information on the go for users of camera phones. &lt;p&gt;“As the old saying goes,” Xie says, “a picture is worth a thousand words.”&lt;/p&gt; &lt;p&gt;Maybe more, actually. Photo2Search gives users a way to search a Web-based database by using nothing more than an image captured by a cellphone equipped with a digital camera.&lt;/p&gt; &lt;p&gt;“This technology,” Xie says, “aims to solve the problem of mapping a physical-world object to a digital-world object. You see an object in the physical world, and you want to know the corresponding information in the digital world - for example, its price on the Web, user comments, or Web sites. There are many different solutions. You can use a bar code or radio-frequency identification. But using a picture of the object is very convenient and very easy to deploy.”&lt;/p&gt; &lt;p&gt;The easy part is the key. Camera phones are simple to use, but the process of text-based search on them is not. That realization provided the late-2004 genesis for Phone2Search.&lt;/p&gt; &lt;p&gt;“At that time,” Xie recalls, “the idea was very simple: Use a camera phone to do a Web search. This is very interesting, because inputting images is much more convenient than inputting text queries on a small device.”&lt;/p&gt; &lt;p&gt;Photo2Search works like this: Seeking information about something seen, a user takes a photo of the object and sends the photo, via e-mail or Multimedia Messaging Service, to a Web-based server, which searches an image database for matches. The server then delivers database information - whether it be a Web page featuring the object in the photo or information associated with the object - to the user, who can act on the information received: read a menu, enter a gallery, book a hotel room, make a purchase.&lt;/p&gt; &lt;p&gt;Sounds simple, right? The devil, as always, is in the &lt;a target="_blank" href="http://research.microsoft.com/displayArticle.aspx?id=1434"&gt;details&lt;/a&gt;.&lt;/p&gt;  &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-114527321141800044?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='related' href='http://ankurjain.org/blog/2006/04/17/microsoft-developing-photo-search/' title='Microsoft Developing Photo Search'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/114527321141800044'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/114527321141800044'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2006/04/microsoft-developing-photo-search.html' title='Microsoft Developing Photo Search'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-114525766103290812</id><published>2006-04-17T00:05:00.000-07:00</published><updated>2006-04-17T00:07:41.033-07:00</updated><title type='text'>Yahoo Plagued by Slow Email</title><content type='html'>&lt;p&gt;&lt;span class="copy"&gt;Dymeta Inc., a small security firm based in Bettendorf, in Iowa says it has discovered why Yahoo’s &lt;a href="http://www.techweb.com/encyclopedia/defineterm.jhtml?term=email&amp;x=&amp;amp;y="&gt;email&lt;/a&gt; is sometimes slow.An analysis of Yahoo Inc. mail servers found that they were only able to accept email about half the time on average, making it likely that email was taking longer than normal to deliver.&lt;/span&gt;&lt;/p&gt; &lt;p&gt;“We’re not saying that mail isn’t going to get through, but it’s likely to take longer than normal,” Gillette said. “Normally, when you send email from one account to another, you can expect it to be delivered in minutes. With the problems they’ve got, it could take hours or even days to get through, or it could be bounced back entirely.”&lt;/p&gt; &lt;p&gt;In testing 16 Yahoo mail servers found on average that the servers were unable to accept email 45 percent of the time, and the number of available servers ranged from as low as four to as high as 12, Aaron Gillette, chief technician for the company, said.&lt;/p&gt; &lt;p&gt;Yahoo, among the largest &lt;a href="http://www.techweb.com/encyclopedia/defineterm.jhtml?term=Web%20mail&amp;x=&amp;amp;y="&gt;Web mail&lt;/a&gt; providers in the world, sending more messages per quarter than the U.S. Postal Service, Federal Express and the United Parcel Service combined in a year, declined a request for an interview. The company, however, did email a statement that blamed its problems on fighting &lt;a href="http://www.techweb.com/encyclopedia/defineterm.jhtml?term=spam&amp;x=32&amp;amp;y=4"&gt;spam.&lt;/a&gt;&lt;/p&gt; &lt;p&gt;“As spam attacks continue to hit all e-mail services at unpredictable rates, Yahoo is constantly enhancing technologies and improving operations in order to deal with the load,” the statement said.&lt;/p&gt; &lt;p&gt;Dymeta conducted the analysis after receiving what it considered an unusual number of complaints from email administrators at a number of businesses. Dymeta embarked on the analysis out of curiosity and as an opportunity to test its new tool called Mail &lt;a href="http://www.techweb.com/encyclopedia/defineterm.jhtml?term=Server&amp;x=&amp;amp;y="&gt;Server&lt;/a&gt; Profiler, Gillette said.&lt;/p&gt; &lt;p&gt;In establishing a &lt;a href="http://www.techweb.com/encyclopedia/defineterm.jhtml?term=smtp&amp;x=20&amp;amp;y=6&amp;_requestid=1676741"&gt;SMTP&lt;/a&gt; connection with Yahoo servers, the testing tool found that they were able to get a response only 55 percent of the time. The rest of the time, there was no response at all. SMTP, or simple mail transfer protocol, is the standard means for &lt;a href="http://www.techweb.com/encyclopedia/defineterm.jhtml?term=communications&amp;amp;x=&amp;y="&gt;communications&lt;/a&gt; between mail servers on the Internet.&lt;/p&gt; &lt;p&gt;The company posted its finding in its online publication &lt;a href="http://www.emailbattles.com/archive/battles/email_aaddhghiad_ih/" target="_blank"&gt;Email Battles.&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-114525766103290812?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='related' href='http://ankurjain.org/blog/2006/04/17/yahoo-plagued-by-slow-email/' title='Yahoo Plagued by Slow Email'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/114525766103290812'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/114525766103290812'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2006/04/yahoo-plagued-by-slow-email.html' title='Yahoo Plagued by Slow Email'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-114525753881478591</id><published>2006-04-17T00:04:00.000-07:00</published><updated>2006-04-17T00:05:38.826-07:00</updated><title type='text'>KKR Buys Flextronics Unit</title><content type='html'>&lt;div class="storycontent"&gt;Kohlberg Kravis Roberts &amp; Co. will buy Flextronics Software Systems for around $900 million. Flextronics International Ltd. is world’s largest producer of electronics for other companies. &lt;p&gt;KKR is buying 85% of the Bangalore-based India unit of Flextronics and marks its presence in the region after it opened its office in Tokyo &amp;amp; Hong Kong last year. Flextronics said it would retain a 15% stake in the business that would operate as an independent software and solutions company.&lt;/p&gt; &lt;p&gt;KKR last year bought Agilent Technologies Inc.’s semiconductor unit, whose operations are mainly in Singapore. Palo Alto, California-based Agilent is the world’s biggest maker of scientific-testing equipment.&lt;/p&gt; &lt;p&gt;“&lt;em&gt;Our investment in Flextronics’ software development and solutions business is an outstanding opportunity to create value in a high-growth sector,&lt;/em&gt;‘’ Adam H. Clammer, a KKR executive said in the statement.&lt;/p&gt; &lt;p&gt;The Indian unit was formerly Hughes Software Systems, based in New Delhi, before Flextronics acquired it. Flextronics, which in June 2004 agreed to buy 55 percent of Hughes for $226 million, renamed the company after increasing its stake. Flextronics Software has a center in Bangalore focusing on development of software for the Internet, accommodating about 600 employees.&lt;/p&gt; &lt;p&gt;Flextronics’ Indian unit develops software for high-speed mobile phone networks and calls made over the Internet for Motorola Inc., Sun Microsystems Inc. and other companies.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Strategy&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Buyout firms typically finance takeovers by borrowing against their targets’ assets to augment their own funds. They then seek to improve profits before selling the companies within five years to other funds or through initial public offerings.&lt;/p&gt; &lt;p&gt;Citigroup Inc. and Merrill Lynch &amp;amp; Co. will arrange financing for the Flextronics purchase, the statement said.&lt;/p&gt; &lt;p&gt;KKR hired Michael Marks, the chief executive officer of Flextronics to advise on Asia and technology investments, the firm said in a statement Dec. 7. KKR in October appointed Deryck Maughan, a former deputy chairman of Citigroup Inc., to supervise the buyout firm’s Asian investments.&lt;/p&gt; &lt;p&gt;Flextronics is seeking to raise more than $1 billion by selling its software, network services and semiconductor units, Chief Executive Officer Michael McNamara said in the statement. It expects to gain $175 million after taxes from this deal.&lt;/p&gt; &lt;p&gt;Flextronics is “focusing our efforts and resources on our core electronics manufacturing services business,'’ the company said in an e-mailed statement today.&lt;/p&gt;  &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-114525753881478591?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='related' href='http://ankurjain.org/blog/2006/04/17/kkr-buys-flextronics-unit/' title='KKR Buys Flextronics Unit'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/114525753881478591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/114525753881478591'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2006/04/kkr-buys-flextronics-unit.html' title='KKR Buys Flextronics Unit'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-114491682092753055</id><published>2006-04-13T01:26:00.000-07:00</published><updated>2006-04-13T01:27:00.960-07:00</updated><title type='text'>Google Calendar</title><content type='html'>&lt;p&gt;&lt;a href="http://google.com/" mce_href="http://google.com"&gt;Google&lt;/a&gt; Inc, the Internet Search Giant has finally launched &lt;a href="http://google.com/calendar" target="_blank" mce_href="http://google.com/calendar"&gt;Google Calendar&lt;/a&gt;, as discussed &lt;a href="http://ankurjain.org/blog/?p=79" target="_blank" mce_href="http://ankurjain.org/blog/?p=79"&gt;earlier&lt;/a&gt;.&lt;br /&gt;&lt;img src="http://www.google.com/googlecalendar/images/learn_more.jpg" alt="Google Calendar  - Features" title="Google Calendar  - Features" mce_src="http://www.google.com/googlecalendar/images/learn_more.jpg" /&gt;&lt;/p&gt;  &lt;p&gt;The Google Calendar service allows its users to see their friends' and family's schedules right next to their own; quickly add events mentioned in &lt;a href="http://gmail.com/" mce_href="http://gmail.com"&gt;Gmail&lt;/a&gt; conversations or saved in other calendar applications; and add other interesting events that are found online.&lt;/p&gt;  &lt;p&gt;Calendar and Events can be shared with the public, invitations can be sent to invite concerned people, send reminders and keep track of RSVPs right inside Google Calendar. Organizations can promote events, too.&lt;/p&gt;  &lt;div style="text-align: center;"&gt;&lt;img src="http://www.google.com/googlecalendar/images/ss-tour5.jpg" alt="Google Calendar - Share Calendar" title="Google Calendar - Share Calendar" mce_src="http://www.google.com/googlecalendar/images/ss-tour5.jpg" /&gt;&lt;/div&gt;  &lt;p&gt;You can set up automatic event reminders, including SMS notifications, and instantly bring up anything on your calendar with the built-in search tool.&lt;/p&gt;  &lt;p&gt;Google Calendar is the latest offering Google, which analysts have said is gradually replacing its search-only business model with that of a portal, or all-purpose Web site. Over the past time, Google has been catching up to rivals &lt;a href="http://yahoo.com/" target="_blank" mce_href="http://yahoo.com"&gt;Yahoo&lt;/a&gt; Inc. and &lt;a href="http://microsoft.com/" target="_blank" mce_href="http://microsoft.com"&gt;Microsoft&lt;/a&gt; Corp.'s &lt;a href="http://msn.com/" mce_href="http://msn.com"&gt;MSN&lt;/a&gt; by adding &lt;a href="http://mail.google.com/" target="_blank" mce_href="http://mail.google.com"&gt;e-mail&lt;/a&gt;, &lt;a href="http://news.google.com/" target="_blank" mce_href="http://news.google.com"&gt;news&lt;/a&gt;, &lt;a href="http://picasa.com/" target="_blank" mce_href="http://picasa.com"&gt;photo sharing&lt;/a&gt;, &lt;a href="http://talk.google.com/" target="_blank" mce_href="http://talk.google.com"&gt;instant messaging&lt;/a&gt;, &lt;a href="http://froogle.com/" target="_blank" mce_href="http://froogle.com"&gt;shopping&lt;/a&gt; and &lt;a href="http://maps.google.com/" mce_href="http://maps.google.com"&gt;mapping&lt;/a&gt; services and a &lt;a href="http://finance.google.com/" target="_blank" mce_href="http://finance.google.com"&gt;finance&lt;/a&gt; section.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Features&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;Calendar Sharing&lt;/b&gt;: Set up a calendar for your company softball team, and share it with the whole roster. (Your shortstop will never forget about practice again.) Or share with friends and family so you can view each other's schedules side by side.&lt;/p&gt;  &lt;p&gt;&lt;b&gt; Invitations&lt;/b&gt;: Create event invitations, send them to friends, and keep track of people's responses and comments, all in one place. Your friends can receive your invitation and post responses even if they don't use Google Calendar themselves.&lt;/p&gt;  &lt;div style="text-align: center;"&gt;&lt;img src="http://www.google.com/googlecalendar/images/ss-tour3.jpg" alt="Google Calendar - Event Invitation" title="Google Calendar - Event Invitation" mce_src="http://www.google.com/googlecalendar/images/ss-tour3.jpg" /&gt;&lt;/div&gt;  &lt;p&gt;&lt;b&gt;Quick Add&lt;/b&gt;: Click anywhere on your calendar where an event belongs (or use the Quick Add link), and start typing. Google Calendar understands whole phrases like "Brunch with mom at Java Cafe 11am on Saturday," and will pop new events right into your agenda.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Gmail Integration&lt;/b&gt;: Add your friend's Super Bowl party to your calendar without ever leaving your Gmail inbox. Gmail now recognizes events mentioned in emails.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Search&lt;/b&gt;: Find the date of the Baxter family BBQ (you knew it was sometime this summer). Or, search public calendars to discover new events you're interested in and add them to your own calendar.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Mobile Access&lt;/b&gt;: Receive event reminders and notifications on your mobile phone.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Event Publishing&lt;/b&gt;: Share your organization's events with the world. Learn more with our Event Publisher Guide.&lt;/p&gt;  &lt;div style="text-align: center;"&gt;&lt;img src="http://www.google.com/googlecalendar/images/ss-tour2.jpg" alt="Google Calendar Add Events" title="Google Calendar Add Events" mce_src="http://www.google.com/googlecalendar/images/ss-tour2.jpg" /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-114491682092753055?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='related' href='http://google.com/calendar' title='Google Calendar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/114491682092753055'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/114491682092753055'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2006/04/google-calendar.html' title='Google Calendar'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry><entry><id>tag:blogger.com,1999:blog-16056150.post-114485581169059456</id><published>2006-04-12T08:29:00.000-07:00</published><updated>2006-04-12T08:30:11.710-07:00</updated><title type='text'>Firefox Flicks</title><content type='html'>&lt;p&gt;To help increase awareness of &lt;a href="http://www.mozilla.com/firefox/" mce_href="http://www.mozilla.com/firefox/" target="_blank"&gt;Firefox&lt;/a&gt; among this target audience, Mozilla has launched Firefox Flicks. They are high-quality, innovative 30-second ad that introduces Firefox to mainstream Web users.&lt;/p&gt;  &lt;p&gt;Create a 30-second ad, in any style (live action or animated,) that brings Firefox to life for the millions of Web users who have yet to discover Firefox and the better Web experience it delivers.&lt;/p&gt;  &lt;p&gt;Watch the Latest flicks here:&lt;/p&gt;  &lt;p&gt;1. &lt;a href="http://www.firefoxflicks.com/flick/?id=19319" mce_href="http://www.firefoxflicks.com/flick/?id=19319" target="_blank"&gt;&lt;b&gt;Double Click Relief&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;2. &lt;a href="http://www.firefoxflicks.com/flick/?id=19326" mce_href="http://www.firefoxflicks.com/flick/?id=19326" target="_blank"&gt;&lt;b&gt;DareDevil&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;3. &lt;a href="http://www.firefoxflicks.com/flick/?id=19321" mce_href="http://www.firefoxflicks.com/flick/?id=19321" target="_blank"&gt;&lt;b&gt;Drama Queen&lt;/b&gt;&lt;/a&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/16056150-114485581169059456?l=wired-news.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='related' href='http://www.firefoxflicks.com/' title='Firefox Flicks'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/114485581169059456'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16056150/posts/default/114485581169059456'/><link rel='alternate' type='text/html' href='http://wired-news.blogspot.com/2006/04/firefox-flicks.html' title='Firefox Flicks'/><author><name>Ankur Jain</name><uri>http://www.blogger.com/profile/17795128626902228352</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='17711282262983788642'/></author></entry></feed>